@charset "UTF-8";
#mainvisual { background: url(../images/mainvisual_bg.jpg) no-repeat center center; height:920px; }
#mainvisual .container { height: 600; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
#mainvisual .container h1 { background: rgba(255, 255, 255, 0.88); padding: 50px; font-size: 38px; font-weight: bold; font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", sans-serif; color: #b2396e; text-align: center; }
#mainvisual .container h1 span { font-size: 50px; display: inline-block; }
/* ▽ SP 1800px layout ========== */
@media only screen and (min-width: 767px) and (max-width: 1800px) { 
  #mainvisual { 
    background: url(../images/mainvisual_md.jpg) no-repeat center center; height:600px;
  }
  #mainvisual .container { 
    height: auto; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 14% 3%; }
}
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) { #mainvisual { height: auto; }
  #mainvisual .container { height: auto; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 14% 3%; }
  #mainvisual .container h1 { padding: 5%; font-size: 25px; }
  #mainvisual .container h1 span { font-size: 35px; } }
/* ========== end △ */
.tt1_sec { padding: 80px 0 130px; background: url(../images/bg1.jpg) no-repeat center top; }
.tt1_sec .container .content { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 20px; }
/* .tt1_sec .container .content:last-child { margin-bottom: 0; } */
.tt1_sec .container .content:last-child .left { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; }
.tt1_sec .container .content:last-child .right { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; }
.tt1_sec .container .content .left { width: 535px; }
.tt1_sec .container .content .right { width: 535px; }
/* .tt1_sec .container .content .left { width: 550px; }
.tt1_sec .container .content .right { width: 490px; } */
.tt1_sec .container .content .right h2 { font-size: 32px; margin-bottom: 10px; font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", sans-serif; }
.tt1_sec .container .content .right h3 { font-size: 20px; font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", sans-serif; margin-bottom: 10px; }
.tt1_sec .container .content .right p { font-size: 16px; margin-bottom: 20px; line-height: 1.8; }
/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) { .tt1_sec { padding: 8% 3%; }
.tt1_sec .container .content { margin-top: 20px; }
  .tt1_sec .container .content .left { width: 100%; margin-bottom: 5%; -webkit-box-ordinal-group: 2 !important; -ms-flex-order: 1 !important; order: 1 !important; }
  .tt1_sec .container .content .right { width: 100%; -webkit-box-ordinal-group: 3 !important; -ms-flex-order: 2 !important; order: 2 !important; }
  .tt1_sec .container .content .right h2 { font-size: 25px; }
  .tt1_sec .container .content .right h3 { font-size: 18px; } }
/* ========== end △ */
.tt2_sec { background: url(../images/bg2.jpg) no-repeat center bottom; padding-bottom: 130px; }
.tt2_sec .container .box1 { margin-bottom: 70px; }
.tt2_sec .container .box1 ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 22px; }
.tt2_sec .container .box1 ul:nth-child(2) {  align-items: center; width: 64.75%; margin-right: auto;margin-left: auto;  }
.tt2_sec .container .box1 ul:last-child { margin-bottom: 0; }
.tt2_sec .container .box2 { margin-bottom: 80px; padding-top: 80px;}
.tt2_sec .container .box2 h2 { font-size: 32px; text-align: center; margin-bottom: 30px; font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", sans-serif; font-weight: bold; }
.tt2_sec .container .box2 h2 span { color: #b2396e; }
.tt2_sec .container .box2 .wrap_content { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 25px; }
.tt2_sec .container .box2 .wrap_content .content { width: 344px; }
.tt2_sec .container .box2 .wrap_content .content h3 { width: 100%; margin-left: 0; height: 84px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; color: #fff; font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", sans-serif; text-align: center; font-size: 16px; background: url(../images/pink_bg.png) center top; position: relative; z-index: 2;}
.tt2_sec .container .box2 .wrap_content .content h3:after { display: block; content: ""; height: 8px; background: url(../images/pink_row.png) no-repeat center bottom; position: absolute; width: 100%; left: 0; bottom: -8px; }
.tt2_sec .container .box2 .wrap_content .content figure { margin-top: -25px; }
.tt2_sec .container .box2 > p { text-align: center; font-size: 16px; margin-bottom: 40px; }
.tt2_sec .container .box2 .btn1 { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
.tt2_sec .container .box3 { -webkit-box-shadow: 0 0 5px rgba(20, 3, 5, 0.3); -moz-box-shadow: 0 0 5px rgba(20, 3, 5, 0.3); box-shadow: 0 0 5px rgba(20, 3, 5, 0.3); padding: 60px; background: #fff; }
.tt2_sec .container .box3 h2 { font-size: 28px; font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", sans-serif; margin-bottom: 10px; text-align: center; }
.tt2_sec .container .box3 p { text-align: center; margin-bottom: 30px; font-size: 16px; }
.tt2_sec .container .box3 ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-bottom: 50px; }
.tt2_sec .container .box3 ul li { width: 19%; font-size: 16px; background: url(../images/point.jpg) repeat-x left bottom; padding-bottom: 10px; margin-right: 1%; margin-bottom: 10px; }
.tt2_sec .container .box3 ul li span { cursor: pointer; }
.tt2_sec .container .box3 .btn1 { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
.tt2_sec .container .box3 .btn1 .input_btn { display: block; color: #fff; text-align: center; text-decoration: none; padding: 15px 80px; font-size: 18px; background: #c7b299; -webkit-transition: all linear 0.3s; -o-transition: all linear 0.3s; transition: all linear 0.3s; }
.tt2_sec .container .box3 .btn1 .input_btn:hover { background: #000; }
.btn1 .input_btn i { margin-left: 20px; }
.tt2_sec .container .box3 .btn1 input { -webkit-appearance: none; -moz-appearance: none; appearance: none; margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; color: #fff; font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", sans-serif; line-height: 1; }
/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) { .tt2_sec { padding: 8% 3%; }
  .tt2_sec .container .box1 { margin-bottom: 8%; }
  .tt2_sec .container .box1 ul { margin-bottom: 0; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .tt2_sec .container .box1 ul:nth-child(2) { width: 100%; }
  .tt2_sec .container .box1 ul li { width: 100%; margin-bottom: 3%; }
  .tt2_sec .container .box2 { margin-bottom: 10%; }
  .tt2_sec .container .box2 h2 { font-size: 25px; }
  .tt2_sec .container .box2 h2 span { display: inline-block; }
  .tt2_sec .container .box2 .wrap_content .content { width: 100%; margin-bottom: 8%; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 8%; }
  .tt2_sec .container .box2 .wrap_content .content h3 { font-size: 16px; }
  .tt2_sec .container .box3 { padding: 8% 5%; }
  .tt2_sec .container .box3 h2 { font-size: 25px; }
  .tt2_sec .container .box3 ul { -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 5%; }
  .tt2_sec .container .box3 ul li { width: 48%; background-size: 5px auto; }
  /* ▽ SP layout ========== */ }

@media only screen and (max-width: 766px) and (max-width: 420px) { .tt2_sec .container .box3 ul li { width: 100%; } }
@media only screen and (max-width: 766px) { /* ========== end △ */ }

/* ========== end △ */
.tt3_sec { padding: 70px 0; }
.tt3_sec .container h2 { text-align: center; color: #b2396e; font-size: 32px; margin-bottom: 10px; font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", sans-serif; }
.tt3_sec .container > p { text-align: center; margin-bottom: 50px; font-size: 16px; }

.tab-buttons {
  display: flex;
  justify-content: center;
  margin-bottom: 30px;
  flex-wrap: wrap;
  gap: 10px;
}
.tab-buttons button {
  padding: 10px 20px;
  border: none;
  background-color: #eee;
  cursor: pointer;
  font-size: 16px;
  border-radius: 5px;
}
.tab-buttons button.active {
  background-color: #b2396e;
  color: white;
}
.tab-content {
  display: none;
}
.tab-content.active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 60px;
}
.tab-content .item {
  width: 352px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  margin-bottom: 22px;
  cursor: pointer;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  -webkit-transition: all ease 1s;
  -o-transition: all ease 1s;
  transition: all ease 1s;
}
.tab-content .item:before {
  font-family: "FontAwesome";
  content: "\f105";
  position: absolute;
  right: 30px;
  color: #b2396e;
  font-size: 24px;
  top: 0;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-transition: all ease 1s;
  -o-transition: all ease 1s;
  transition: all ease 1s;
}
.tab-content .item figure {
  margin-right: 20px;
}
.tab-content .item p {
  font-size: 18px;
  -webkit-transition: all ease 1s;
  -o-transition: all ease 1s;
  transition: all ease 1s;
}
.tab-content .item a {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  left: 0;
  top: 0;
}
.tab-content .item:hover {
  background: #b2396e;
  -webkit-transition: all ease 0.3s;
  -o-transition: all ease 0.3s;
  transition: all ease 0.3s;
}
.tab-content .item:hover p {
  color: #fff;
  -webkit-transition: all ease 0.3s;
  -o-transition: all ease 0.3s;
  transition: all ease 0.3s;
}
.tab-content .item:hover:before {
  right: 0;
  opacity: 0;
  -webkit-transition: all ease 0.3s;
  -o-transition: all ease 0.3s;
  transition: all ease 0.3s;
}

.tt3_sec .container .wrap_item2 { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-top: 100px;}
.tt3_sec .container .wrap_item2 .item { width: 525px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; position: relative; margin-bottom: 22px; cursor: pointer; -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); -webkit-transition: all ease 1s; -o-transition: all ease 1s; transition: all ease 1s; }
.tt3_sec .container .wrap_item2 .item:before { font-family: "FontAwesome"; content: "\f105"; position: absolute; right: 30px; color: #b2396e; font-size: 24px; top: 0; height: 100%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-transition: all ease 1s; -o-transition: all ease 1s; transition: all ease 1s; }
.tt3_sec .container .wrap_item2 .item figure { margin-right: 20px; }
.tt3_sec .container .wrap_item2 .item p { font-size: 18px; -webkit-transition: all ease 1s; -o-transition: all ease 1s; transition: all ease 1s; }
.tt3_sec .container .wrap_item2 .item p span { display: block; color: #b2396e; -webkit-transition: all ease 1s; -o-transition: all ease 1s; transition: all ease 1s; font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", sans-serif; }
.tt3_sec .container .wrap_item2 .item p strong { font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", sans-serif; font-size: 22px; }
.tt3_sec .container .wrap_item2 .item a { position: absolute; width: 100%; height: 100%; display: block; left: 0; top: 0; }
.tt3_sec .container .wrap_item2 .item:hover { background: #b2396e; -webkit-transition: all ease 0.3s; -o-transition: all ease 0.3s; transition: all ease 0.3s; }
.tt3_sec .container .wrap_item2 .item:hover p { color: #fff; -webkit-transition: all ease 0.3s; -o-transition: all ease 0.3s; transition: all ease 0.3s; }
.tt3_sec .container .wrap_item2 .item:hover p span { color: #fff; -webkit-transition: all ease 0.3s; -o-transition: all ease 0.3s; transition: all ease 0.3s; }
.tt3_sec .container .wrap_item2 .item:hover:before { right: 0; opacity: 0; -webkit-transition: all ease 0.3s; -o-transition: all ease 0.3s; transition: all ease 0.3s; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) { .tt3_sec { padding: 8% 3% 4% 3%; }
  .tt3_sec .container h2 { font-size: 25px; }
  .tt3_sec .container p { margin-bottom: 6%; }
  .tt3_sec .container .wrap_item { margin-bottom: 5%; }
  .tt3_sec .container .wrap_item .item { width: 48%; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
  .tt3_sec .container .wrap_item .item figure { width: 20%; }
  .tt3_sec .container .wrap_item .item p { margin-bottom: 0; font-size: 16px; }
  /* ▽ SP layout ========== */ }

@media only screen and (max-width: 768px) {
  .tab-content .item {
    width: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .tab-content .item figure {
    width: 20%;
  }
  .tab-content .item p {
    font-size: 16px;
    margin-bottom: 0;
  }
}

@media only screen and (max-width: 766px) { /* ========== end △ */
  .tt3_sec .container .wrap_item2 { margin-bottom: 5%; margin-top: 60px;}
  .tt3_sec .container .wrap_item2 .item { width: 100%; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
  .tt3_sec .container .wrap_item2 .item figure { width: 30%; }
  .tt3_sec .container .wrap_item2 .item p { margin-bottom: 0; }
  .tt3_sec .container .wrap_item2 .item p span { font-size: 16px; }
  .tt3_sec .container .wrap_item2 .item p strong { font-size: 20px; }
  /* ▽ SP layout ========== */ }

@media only screen and (max-width: 766px) and (max-width: 420px) { .tt3_sec .container .wrap_item2 .item { width: 100%; }
  .tt3_sec .container .wrap_item2 .item p { margin-bottom: 0; }
  .tt3_sec .container .wrap_item2 .item p span { font-size: 14px; }
  .tt3_sec .container .wrap_item2 .item p strong { font-size: 16px; } }

/* ========== end △ */
.tt4_sec { padding-bottom: 80px; }
.tt4_sec .container { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; padding: 0 2%; }
.tt4_sec .container .left { width: 525px; border: 1px solid #cccccc; padding: 20px 10px 10px; border-radius: 5px; }
.tt4_sec .container .left .widget_img img { border: 1px solid #dbdbdb; border-radius: 50%; max-width: 160px }
.tt4_sec .container .left .widget_btn { background-color: #125688; color: #fff; border-radius: 4px; text-decoration: none; padding: 1px 10px 3px; }
.tt4_sec .container .left .widget_btn:hover { background-color: #0f4871; }
.tt4_sec .container .left iframe { width: 100%; }
.tt4_sec .container .right { width: 525px; }
.tt4_sec .container .right .twtt_wrap { margin-top: 20px; }
.tt4_sec .container .right .twtt_wrap a { text-decoration: none; }
.tt4_sec .container .right .twtt_wrap .twtt_txt { margin-bottom: 15px; }
.tt4_sec .container .right .twtt_wrap .twtt_txt img{ width: 12%; }
.tt4_sec .container .right .twtt_wrap .twtt_name { font-size: 20px; font-family: Helvetica,Roboto,"Segoe UI",Calibri,sans-serif; line-height: 1.2; font-weight: 700; cursor: pointer; color: #292F33; margin-bottom: 5px; }
.tt4_sec .container .right .twtt_wrap .twtt_name .twtt_name--id { font-size: 16px; cursor: pointer; color: #8899A6; font-weight: normal; }
.tt4_sec .container .right .twtt_wrap02 { display: flex; flex-direction: column-reverse; }
.tt4_sec .container .sns02  { text-align: center; display: flex; flex-direction: column; width: 270px; }
.tt4_sec .container .sns02 .sns02_img {text-align: center; margin-bottom: 25px;}
.tt4_sec .container .sns02 img { width: 60px; height: auto; }
.tt4_sec .container .sns02 .sns02_txt a { text-decoration: underline; }
.tt4_sec .container .sns02 .sns02_txt--top,.tt4_sec .container .sns02 .sns02 .sns02_txt--btm{ text-align: center; }
.tt4_sec .container .sns02 .sns02_txt--top{ font-size: 20px; font-weight: 600; }
.tt4_sec .container .sns02 .sns02_txt--btm{ font-size: 18px; font-weight: 300;}



/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) {
  .tt4_sec { padding: 0 3% 8%; }
  .tt4_sec .container { flex-direction: column; padding: 0; }
  .tt4_sec .container .left { width: 100%; }
  .tt4_sec .container .right { width: 100%; margin-top: 20px; }
  .tt4_sec .container .right .twtt_wrap { margin-top: 0; padding-left: 2%;}
  .tt4_sec .container .right .twtt_wrap .twtt_txt { margin-bottom: 10px;}
  .tt4_sec .container .right .twtt_wrap .twtt_txt img{ width: 13%; }
  .tt4_sec .container .right .twtt_wrap .twtt_name { margin-bottom: 0; }
  .tt4_sec .container .right iframe { height:600px!important; border: solid 1px #cccccc !important; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; padding: 2% !important; width: 95% !important; }
  .tt4_sec .container .right #twtt_follow > iframe { border:none!important; }
  .tt4_sec .container .sns02 { flex-direction: row; align-items: center; margin: 0 0 34px 0; justify-content: center; width: auto; }
  .tt4_sec .container .sns02 .sns02_img {text-align: center; margin: 0 30px 0 0; }
  .tt4_sec .container .sns02 img { width: 60px; height: auto; }
  .tt4_sec .container .sns02 .sns02_txt { width: 235px;  }
  .tt4_sec .container .sns02 .sns02_txt--top,.tt4_sec .container .sns02_txt--btm { text-align: left; }
  .tt4_sec .container .sns02 .sns02_txt--top { font-size: 118%; font-weight: 500; }
  .tt4_sec .container .sns02 .sns02_txt--btm { font-weight: 500;}
}

/* ========== end △ */
.tt5_sec { padding: 55px 0; border-top: 4px solid #c7b299; margin-top: 40px; }
.tt5_sec .container .title { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-bottom: 20px; }
.tt5_sec .container .title h2 { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; font-family: "Yu Mincho", YuMincho, HG明朝B, "MS Mincho", sans-serif; }
.tt5_sec .container .title h2 span { font-size: 28px; }
.tt5_sec .container .title h2 strong { font-size: 16px; color: #b2396e; padding-left: 20px; margin-left: 20px; border-left: 1px solid #b2396e; }
.tt5_sec .container .title .btn1 a { padding: 10px 30px; }
.tt5_sec .container .content { height: 150px; overflow: auto; }
.tt5_sec .container .content dl { display: -webkit-box; display: -ms-flexbox; display: flex; padding: 10px 0; }
.tt5_sec .container .content dl dt { color: #b2396e; font-size: 16px; margin-right: 30px; }
.tt5_sec .container .content dl dd { width: 950px; }
/* ▽ SP layout ========== */
@media only screen and (max-width: 766px) { .tt5_sec { padding: 8% 3%; }
  .tt5_sec .container .title h2 span { font-size: 20px; }
  .tt5_sec .container .title h2 strong { font-size: 14px; }
  .tt5_sec .container .content { height: 250px; }
  .tt5_sec .container .content dl { -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .tt5_sec .container .content dl dt { width: 100%; } }
/* ========== end △ */
iframe[id*='twitter-widget-'] { height: 620px !important; margin-bottom: 10px !important; width: 100% !important; }
#twtt_follow > iframe[id*='twitter-widget-'] { height: 20px !important;}
