@charset "UTF-8";

body {
  color: #5c5c5c !important;
}

/*img {
    width: 100% !important;
}*/

.contentsArea {
  font-family: "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
}
/*
.MainContentBlock #weddingB {
  display: none;
}

@media only screen and (max-width: 48em) {
.MainContentBlock#weddingA_base {
  background-color: #ffffff !important;
}
.MainContentBlock #weddingA {
  display: none;
}
.MainContentBlock #weddingB {
  display: block;
}
}
*/
.Page-content {
  position: relative;
  padding-top: 2%;
}
@media only screen and (max-width: 48em) {
.contentsArea {
  padding-top: 0;
}
.Page-content {
  padding-top: 0%;
}
}


/* =========== common_neo 上書き =========== */
.Page-leadText2 {
  margin-right: auto;
  margin: 10% auto;
  margin-left: auto;
  max-width: 1024px;
  width: 100%;
  text-align: center;
  letter-spacing: .1rem;
  font-size: 2.0rem;
  line-height: 2.3;
  font-weight: 600;
  font-family: "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
}
div.Page-header-neo h1.header-neo-item1 {
  font-size: 100px !important;
  letter-spacing: 5px !important;
  font-family: "游明朝", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "ヒラギノ明朝 Pro W3", "HiraMinProN-W3", "HG明朝E", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGS明朝E", "ヒラギノ明朝 Pro W6", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
div.Page-header-neo span.header-neo-item3 {
  font-size: 36px !important;
  font-family: "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
}
div.Page-header-neo h1.header-neo-item1::after {
  display: none !important;
}


header.Page-header-neo h1.header-neo-item1 {
  font-size: 100px !important;
  letter-spacing: 5px !important;
  font-family: "游明朝", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "ヒラギノ明朝 Pro W3", "HiraMinProN-W3", "HG明朝E", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGS明朝E", "ヒラギノ明朝 Pro W6", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
header.Page-header-neo span.header-neo-item3 {
  font-size: 36px !important;
  font-family: "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif;
}
header.Page-header-neo h1.header-neo-item1::after {
  display: none !important;
}


@media only screen and (max-width: 60em) {
  div.Page-header-neo h1.header-neo-item1 {
    font-size: 52px !important;
    }
  div.Page-header-neo span.header-neo-item3 {
  font-size: 28px !important;
}
}

@media only screen and (max-width: 60em) {
  header.Page-header-neo h1.header-neo-item1 {
    font-size: 52px !important;
    }
  header.Page-header-neo span.header-neo-item3 {
  font-size: 28px !important;
}
}

@media only screen and (max-width: 48em) {
.Page-leadText2 {
  letter-spacing: .1rem;
  font-size: 1.3rem;
  line-height: 2.2;
  margin: 100px 0;
}
	

  .MainContentBlock.ContentBlock-neo2 {
  padding: 0 !important;
}
  div.Page-header-neo div.header-neo-inner {
    padding-top: 0 !important;
}
  div.Page-header-neo h1.header-neo-item1 {
    font-size: 32px !important;
}
  div.Page-header-neo span.header-neo-item3 {
    font-size: 18px !important;
}
}

@media only screen and (max-width: 48em) {
.limited{width:92%; margin:0 auto;}
}

/* =========== headingBlock =========== */
.headingBlock {
  position: relative;
}
h2.heading2_1 {
  text-align: center;
  font-size: 48px;
  line-height: 0.7;
  margin-bottom: 50px;
}
h2.heading2_1 span{
  font-size: 16px;

}
h3.heading3_1 {
  font-size: 30px;
  line-height: 70px;
}
@media only screen and (max-width: 48em) {
h2.heading2_1 {
  margin-bottom: 30px;
} 
h3.heading3_1 {
  font-size: 22px;
  line-height: 50px;
}
}


/* 縦線 */
p.v_line {
  position: absolute;
  top: 180px;
  right: 0;
  left: 0;
  display: inline-block;
  font-size: 20px;
  line-height: 65px;
}
p.v_line::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 1px;
  height: 50px;
  margin: auto;
  background-color: #5c5c5c;
}
/* 縦線（h1下） */
p.v_line2 {
  position: absolute;
  top: 70px;
  right: 0;
  left: 0;
  display: inline-block;
  font-size: 20px;
  line-height: 65px;
}
p.v_line2::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 1px;
  height: 150px;
  margin: auto;
  background-color: #000000;
}

@media only screen and (max-width: 60em) {
p.v_line2 {
  position: absolute;
  top: 30px;
  line-height: 30px;
}
p.v_line2::after {
  height: 70px;
}
}

@media only screen and (max-width: 48em) {
h2.heading2_1 {
  font-size: 28px;
  line-height: 1.2;
}
h2.heading2_1 span{
  font-size: 16px;
}
p.v_line2 {
  position: absolute;
  top: 30px;
  right: 0;
  left: 0;
}
p.v_line2::after {
  height: 50px;
}
}


/* =========== timeline setting =========== */
.timeline{
  width:100%;
  margin:50px auto;
  padding:0 30px;
}
.timeline li{
  /*線の起点とするためrelativeを設定*/
  position: relative;
  list-style: none;
  padding:0 0 20px 0;
}
.timeline dl{
  margin:0 0 20px 3em;
}
.timeline dt{
  font-size: 48px;
  line-height: 1;
}
.timeline dt span{
  font-size: 24px;
}
.timeline dd strong{
  display: block;
  padding:10px 0;
}
/*絶対配置で線を設定*/
.border-line {
  /*線の位置*/
  position: absolute;
  left:4.5px;
  top:0;
  width:1px;/*線の太さ*/
  height:0;/*はじめは高さを0に*/
  background: #5c5c5c;
}
/*タイムラインの見出し横の丸の位置と形状*/
.timeline li::after{
  content:'';
  position: absolute;
  top:0;
  left:0;
  width:10px;
  height: 10px;
  background:#5c5c5c;
  border-radius: 50%;
}




/* =========== 各コンテンツ =========== */
.imageBox_1{
  width: 100%;
  height: 100%;
  position: relative;
}
.imageBox_1::before{
  background-color: rgba(0,0,0,0.25);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: ' ';
}
.imageBox_1 .leadcopy{
  position: absolute;
  z-index: 10;
  font-size: 35px;
  bottom: 70px;
  left: 70px;
  font-weight: 500;
  color: #000000;
}
.imageBox_1 .leadcopy_2{
  position: absolute;
  z-index: 10;
  font-size: 35px;
  bottom: 50px;
  left: 50px;
  font-weight: 500;
  color: #000000;
}
.imageBox_1 .leadcopy_3{
  position: absolute;
  z-index: 10;
  font-size: 35px;
  bottom: 70px;
  right: 70px;
  font-weight: 500;
  color: #000000;
}
.imageBox_1 .leadcopy p{
  background-color: #fff;
  display: inline-block;
  padding: 0 2%;
}
.imageBox_1 .leadcopy_2 p{
  background-color: #fff;
  display: inline-block;
  padding: 0 2%;
}
.imageBox_1 .leadcopy_3 p{
  background-color: #fff;
  display: inline-block;
  padding: 0 0 0 2%;
  width: 393px;
}
.imageBox_2 {
  width: 100%;
}
.imageBox_3{
  width: 100%;
  height: 100% !important;
}

@media only screen and (max-width: 48em) {
.imageBox_1 .leadcopy{
  font-size: 20px;
  bottom: 30px;
  left: 30px;
}
.imageBox_1 .leadcopy_2{
  font-size: 20px;
  bottom: 30px;
  left: 30px;
}
.imageBox_1 .leadcopy_3{
  font-size: 20px;
  bottom: 30px;
  right: 30px;
}
.imageBox_1 .leadcopy_3 p{
  width: 225px;
}
}

/* コンテンツタイトル */
.textBox{
  position: relative;
  padding: 30px;
  height: 100%;
}
.contents_title{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  font-weight: 600;
  letter-spacing: 1.5px;
  width: 100%;
}
.text_main{
  font-size: 28px;
  line-height: 4rem;
  margin-bottom: 15px;
}
.text_sub{
  font-size: 16px;
  line-height: 2.5rem;
}

.textBox2{
  position: relative;
  padding: 30px;
  width: 100%;
  height: calc(100% / 3);
}
.contents_title2{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  font-weight: 600;
  letter-spacing: 1.5px;
  width: 100%;
}
@media only screen and (max-width: 48em) {
.textBox{
  padding: 15px;
}
.textBox2{
  padding: 15px;
  height: 172.5px;
}
.contents_title{
  top: 54%;
  letter-spacing: 0.5px;
}
.text_main{
  font-size: 18px;
  line-height: 2.5rem;
  margin-bottom: 5px;
}
.text_sub{
  font-size: 13px;
  line-height: 2rem;
}  
}


/* コンテンツカテゴリー */
.category_1{
  border: solid 2px #fff;
  color: #fff;
  width: 130px;
  text-align: center;
  padding: 2px 0;
}
.category_1 p{
  font-weight: 600;
  letter-spacing: 2px;
}
.category_2{
  border: solid 2px #D1BE81;
  color: #D1BE81;
  width: 130px;
  text-align: center;
  padding: 2px 0;
}
.category_2 p{
  font-weight: 600;
  letter-spacing: 2px;
}
@media only screen and (max-width: 48em) {
.category_1{
  width: 100px;
  border: solid 1.5px #fff;
}
.category_1 p{
  font-size: 10px;
}
.category_2{
  width: 100px;
  border: solid 1.5px #D1BE81;
}
.category_2 p{
  font-size: 10px;
}
/* スマホ カラー反転 */
.inversion .category_1{
  width: 100px;
  color: #D1BE81;
  border: solid 1.5px #D1BE81;
}
.inversion .category_2{
  width: 100px;
  color: #fff;
  border: solid 1.5px #fff;
}
}

/* flex_2a */
.flex_2a{
	display: flex;
  align-items: stretch;
}
.flex_2a_inner{
  width: 100%;
}
/* flex_2b */
.flex_2b{
	display: flex;
  align-items: stretch;
}
.flex_2b_inner{
  width: 100%;
  height: auto;
}
/* flex_2c */
.flex_2c{
 /* display: flex;
  flex-direction: column;*/
}
.flex_2c_inner{
  width: 100%;
}
/* flex_2e */
.flex_2e{
  display: flex;
  justify-content: space-between;
}
.flex_2e_inner{
  width: 49%;
}

@media only screen and (max-width: 48em) {
/* flex_2a */
.flex_2a.reverse{
	display: flex;
  align-items: stretch;
  flex-direction: row-reverse;
}
/* flex_2b */
.flex_2b{
	display: block;
}
.flex_2b.reverse2{
	display: flex;
  flex-direction: column-reverse;
}
.flex_2b_inner{
  width: 100%;
}
/* flex_2e */
.flex_2e{
  display: flex;
  flex-direction: column;
}
.flex_2e_inner{
  width: 100%;
}
}



/* =========== video =========== */
.videoBox_1{
  height: 100%;
  display:flex; /*動画下の余白消す（videoタグ親要素）*/
  align-items: end; /*動画下の余白消す（videoタグ親要素）*/
}
.videoBox_1 video{
  width: 100%;
  line-height:100%; /*動画下の余白消す（videoタグ子要素）*/
}
.videoBox_2{
  height: 100%;
  display:flex; /*動画下の余白消す（videoタグ親要素）*/
  align-items: end; /*動画下の余白消す（videoタグ親要素）*/
}
.videoBox_2 video{
  width: 100%;
  line-height:100%; /*動画下の余白消す（videoタグ子要素）*/
}
@media only screen and (max-width: 48em) {
.videoBox_1{
  height: auto;
}
}




/* =========== movie_area =========== */

.movie_area{
  padding-top: 10%;
  text-align: center;
}
.movie_box{
  padding: 2% 3% 0 3%;
  background-color: #f9f5e6;
  height: 100%;
  border-radius: 15px;
}
.movie_box p{
  font-size: 16px;
  margin-bottom: 20px;
  font-weight: 500;
}
.movie_box p span{
  font-size: 18px;
  font-weight: bold;
}
@media only screen and (max-width: 48em) {
.movie_area{
  padding-top: 20%;
}
.movie_box{
  padding: 5% 3% 0 3%;
  margin-bottom: 20px;
  border-radius: 10px;
  color: #000;
}
.movie_box p{
  font-size: 13px;
  margin-bottom: 15px;
}
.movie_box p span{
  font-size: 16px;
}
}



/* =========== parts =========== */
/* 背景色 */
.bg_color_yellow { background-color: #fffbf3 !important; }
.bg_color_white { background-color: #ffffff !important; }
.bg_color_gold{background-color: #D1BE81 !important;}

/* フォントカラー */
.text_white{
  color: #fff;
}
.text_gold{
  color: #D1BE81;
}
/* スマホ カラー反転 */
@media only screen and (max-width: 48em) {
.inversion .bg_color_gold{background-color: #fff !important;}
.inversion .bg_color_white { background-color: #D1BE81 !important; }
.inversion .text_white{
  color: #D1BE81;
}
.inversion .text_gold{
  color: #fff;
}
}

@media only screen and (max-width: 30em) {
    .Mainvisual-movie video {
      margin-left: 0; 
      width: 106%;
    }
}


/* ============================■■共通CLASS■■============================ */
/* clearfix */
.clearfix:after {
  display: block;
  visibility: hidden; 
  clear: both;
  height: 0;
  content: "";
}

/* =========== br =========== */
/* 768px */
@media only screen and (max-width: 48em) {
br.erase768{
	display:none;
	}
}

/* モバイル時改行する */
.mb_show {
	display: none;
}
@media only screen and (max-width: 30em) {
.mb_show {
	display: block;
}
}


/* ========== marginBottom ========== */
.mb0{ margin-bottom:0 !important; }
.mb05{ margin-bottom:5px !important; }
.mb10{ margin-bottom:10px !important; }
.mb20{ margin-bottom:20px !important; }
.mb30{ margin-bottom:30px !important; }
.mb40{ margin-bottom:40px !important; }
.mb50{ margin-bottom:50px !important; }
.mb60{ margin-bottom:60px !important; }
.mb70{ margin-bottom:70px !important; }
.mb80{ margin-bottom:80px !important; }
.mb90{ margin-bottom:90px !important; }
.mb100{ margin-bottom:100px !important; }

/* ========== marginBottomParcent ========== */
.mb0p{ margin-bottom:0 !important; }
.mb1p{ margin-bottom:1% !important; }
.mb2p{ margin-bottom:2% !important; }
.mb3p{ margin-bottom:3% !important; }
.mb05p{ margin-bottom:5% !important; }
.mb10p{ margin-bottom:10% !important; }
.mb15p{ margin-bottom:15% !important; }
.mb20p{ margin-bottom:20% !important; }
.mb30p{ margin-bottom:30% !important; }
.mb40p{ margin-bottom:40% !important; }
.mb50p{ margin-bottom:50% !important; }
.mb60p{ margin-bottom:60% !important; }
.mb70p{ margin-bottom:70% !important; }
.mb80p{ margin-bottom:80% !important; }
.mb90p{ margin-bottom:90% !important; }
.mb100p{ margin-bottom:100% !important; }

/* ========== txt-align ========== */
.txt_left{text-align:left !important;}
.txt_center{text-align:center !important;}
.txt_right{text-align:right !important;}
.txt_just{text-align:justify !important;}

