﻿section#youtube h3 {
    font-size: 90px;
    opacity: 0.1;
    color: #6e6e6e;
    font-family: 'Cormorant', serif;
}
.yt_wrap {
    width: 80%;
    max-width: 900px;
    margin: auto;
}
section#youtube {
    text-align: center;
    padding: 150px 0 0;
}

.yt_wrap iframe {
    width: 100%;
    height: 500px;
}

.btn_container a {
    display: inline-block;
    background: #003441;
    color: white;
    padding: 5px;
    width: 100%;
    text-align: center;
    max-width: 300px;
}
.btn_container.grid_12_sp {
    padding-left: 130px;
    margin-top: 10px;
}
.voice .cate_box:after {
    width: 90px;
    height: 90px;
    content: "";
    position: absolute;
    background: url(Dup/img/icon.png) no-repeat;
    left: -140px;
    bottom: 20px;
    background-position: center;
    background-size: contain;
}
.voice .cate_box {
    background: red;
    border-radius: 20px;
    border: 0;
    background: #3dbf65;
    color: white;
    padding: 30px;
    width: calc(100% - 150px);
    margin-left: auto;
    box-sizing: border-box;
    position:relative;
}
.voice .cate_box:before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 25px 40px 0px;
    border-color: transparent transparent #3dbf65 transparent;
    left: -30px;
    transform: rotate(-90deg);
    top: 55%;
}
#fakeloader:before{
   display:none;
}
div#footer_nav_wrap {
    background: #952344;
    color: white;
    padding-top: 15px;
}
div#h1txt {
    color: white;
}
section#footer_nav {
    padding-bottom: 0;
    margin-bottom: 0;
}
#footer_nav li a {
    color: white;
}
#footer .con_box {
    color: white;
}
p.tel_bt.pop400.mg_t-10px a {
    font-size: 26px;
    color: white;
}
#footer_con h2 {
    color: white;
}
p#copyright {
    background: #101010;
}
#footer {
    background-color: rgb(255 255 255 / 0%);
}
#top_cms a.more_btn {
    background: #003441;
    color: white;
}
.cms_5-a.cms_wrap {
    position: relative;
    background: white;
}
#top_cms a.more_btn{
    transition:all 0.3s;
}
#top_cms a.more_btn:hover {
    background: #952344 !important;
}
#top_cms .more_btn:before,#top_cms .more_btn:after{
    display:none;
}
#top_cms.back1:before{
    display:none;
}
section.top_cms_box{
    position:relative;
}
.cms_title {
    text-align: center;
    position: relative;
}
section.top_cms_box:nth-child(3),section.top_cms_box:nth-child(6){
    background: url(Dup/img/bg9.jpg);
    background-size: 400px;
    padding-top: 80px;
    margin-bottom: 100px;
}

section.top_cms_box:nth-child(3):before,section.top_cms_box:nth-child(6):before {
    content: "";
    position: absolute;
    background: #fbe917d9;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#contents3 .box_txt p {
    font-size: 16px;
    margin-top: 50px;
}
#banner {
    position: fixed;
    z-index: 2;
    left: 5px;
    bottom: -150px;
    transition:all 0.3s;
}
.banner_active{
    bottom:5px !important;
}
.bg_color3 {
    background-color: #003441;
}
p.tel_bt {
    font-size: 20px;
}
.hvr_txt_color1:hover {
    color: #5c2f44;
}
p.tel_bt.pop400.mg_t-10px a {
    font-size: 26px;
}
.cms_title p {
    font-size:16px;
    line-height: 1em;
}
#overlay .left li {
    max-width: 300px;
}
.flow_type1 .cate_box{border-left:none;background-color: rgba(0,0,0,0);}
.flow_type1 .box_txt1,
.flow_type1 .box_txt2{padding-left:130px;}

.flow_type1 .box_wrap{
    position: relative;
    padding-left: 30px;
}
.flow_type1 .box_wrap:before {
    content: "";
    display: inline-block;
    height: calc(100% - 0px);
    border-left: 14px solid #d1e0d6;
    position: absolute;
    top: -5px;
    left: 107px;
}
.flow_type1 .box_txt1{position:relative;}
.flow_type1 .box_txt1::before,
.flow_type1 .box_txt1::after {
	content: "";
	display: block;
	position: absolute;
	top: 18px;
}
.flow_type1 .box_txt1::before {
	width: 7px;
	height: 7px;
	margin-top: -3px;
	    background: #7a9985;
	border-radius: 50%;
	left: 61.5px;
}
.flow_type1 .box_txt1::after {
	width: 50px;
	border-bottom: 1px dashed #999;
	position: absolute;
	left: 72px;
}
.flow_type1 .box_description2{
    position: relative;
    border-left: none;
    background-color: rgba(255, 255, 255, 0);
}
.flow_type1 .box_description2 span{
position: absolute;
    display: inline-block;
    width: 90px;
    top: -23px;
    left: -50px;
}
/*--------タブレット--------*/
@media screen and (max-width: 768px){
.flow_type1 .flex_order2_tb{
    width: 78%!important;
    margin-left: auto;
}
#contents2 .box_wrap .box_img:before{
        background-size: 250px;
}
.back1:before{
        background-size: 400px !important;
}
}
/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
    
   
  
.flow_type1 .box_description2 span {
    width: 70px;
}
.flow_type1 .box_wrap{
    padding-left: 23px;
}
.flow_type1 .box_wrap:before {
    left: 22px;
}
.flow_type1 .box_txt1::before, .flow_type1 .box_txt1::after {
    top: 58px;
}
.flow_type1 .box_txt1::before {
    margin-top: -3px;
    left: -17.5px;
}
.flow_type1 .box_txt1::after {
    width: 30px;
    left: -8px;
}
.flow_type1 .box_txt1, .flow_type1 .box_txt2 {
    padding-left: 30px;
}
.flow_type1 .box_txt1{
    padding-top: 46px;
}
.flow_type1 .flex_order2_tb {
    width: 87%!important;
}
}
.no_flow .box_txt1:before,.no_flow .box_txt1:after,.no_flow .box_wrap:before{
    display:none !important;
}
.no_flow .box_txt1,.no_flow .box_txt2{
    padding-left:0;
}







.border_color5 {
    border-color: #cdb6bc;
}
.border_color1 {
    border-color: #952344;
}
#cms_2-f .cate{
    border: 0;
}
.border_color4 {
    border-color: #7a9985;
}
.border_color2 {
    border-color: #d1e0d6;
}
#info_contact .con_img:before {
   
    background-color: rgb(54 54 54 / 50%);　
}
div#info_contact_wrap .con_box .hannari {
    font-family: 'Cormorant', serif;
    letter-spacing: 2px;
    font-size: 34px;
}
.cms_title h3 {
    font-size: 48px;
    color: #000000;
}
.line-l:before{
    display:none;
}
.cms_title{
    text-align:center;
}
.cms_title h3 {
    font-size: 58px;
    font-weight: 300;
    margin-top: 5px;
}
#main_img:before {
    background-color: rgb(0 0 0 / 30%);
}
a.linkStyle {
    color: #7a9985;
}
.cate_list li a:hover {
    background: #000000 !important;
}
.pager li a {
    background-color: #003441 !important;
}
.pager li a:hover{
    background-color:#D1E0D6 !important;
}
.cate_list li a {
    background-color: #003441 !important;
    color: white;
}
.cate_list li a:before {
    color: rgb(255 255 255 / 70%) !important;
}
.page_title_box h2 {
    font-family: 'Cormorant', serif;
    font-size: 60px;
    font-weight: 300;
}
.page_title_box p {
    font-size: 16px; 
}
#page_title:before {
    background-color: rgb(64 64 64 / 40%);
}
#page_title .page_title_box {
    padding-bottom: 28px;
    background: none;
}

.bg_color2 {
    background-color: #952344;
}
.txt_color1 {
    color: #000000;
}
.txt_color3 {
    color: #ad8994;
}
.border_color3 {
    border-color: #952344;
}
.bg_color1 {
    background-color: #952344;
}
.pop400 {
    font-family: 'Gilda Display', serif;
}
header #logo{
    max-width: 70px !important;
}
header.scr_header {
   background: rgb(0,0,0);
    background: linear-gradient(180deg, #222222a3 0%, rgb(0 0 0 / 0%) 100%) !important;
}
#contents3 span.font_en {
    position: absolute;
    bottom: 0;
    z-index: 2;
    left: 30px;
    font-size: calc(70px + 5vw);
    line-height: 0.6em;
    color: white;
    letter-spacing: 0;
}

.back1:before {
    background: url(Dup/img/bg2.jpg);
    background-size: 550px !important;
    z-index: -1;
}

#contents3:before {
    width: 40%;
    height: 100%;
    background: url(Dup/img/bg3.jpg);
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    background-size: 500px;
}
#contents3 .box_txt h3 {
    margin-bottom: 50px;
    left: -40px;
}
section#contents3 .box_wrap .box_txt ul li:before {
    counter-increment: number 1;
    content: "0" counter(number);
    position: absolute;
    font-size: 30px;
    line-height: 1em;
    top: 0px;
    margin-right: 15px;
    left: 0;
    border-bottom: 3px solid;
    text-align: center;
    font-family: 'Gilda Display', serif;
    letter-spacing: 0;
    font-weight: normal;
}
section#contents3 .box_wrap .box_txt ul li {
    font-size: 16px;
    position: relative;
    margin: 20px 0;
    padding-left: 50px;
    /* line-height: 1em; */
}
section#contents3 .box_wrap .box_txt ul{
   counter-reset: number 0;
}
#contents3 {
    margin-top: 280px;
    margin-bottom: 100px;
    padding: 8% 0 200px;
    padding-left: 100px;
    padding-right: 50px;
    box-sizing: border-box;
    background: #003441;
    width: calc(100% - 150px);
    margin-left: auto;
    position: relative;
}
section#contents3 .box_wrap {
    display: flex;
    max-width: 1380px;
    margin-left: 0;
    align-items: center;
    position: relative;
}
section#contents3 .box_wrap .box_txt {
    width: 40%;
    padding-left: 10%;
    margin-left: auto;
    color: white;
}
section#contents3 .box_wrap .box_img {
    width: 50%;
    position: absolute;
    bottom: -50px;
}
section#contents3 .box_wrap .box_img figure {
    padding-top: 110%;
}
#contents2 .box_wrap:last-of-type {
    margin-top: 100px;
}
.box_txt h3{
    position:relative;
}
#contents2 .box_wrap .box_txt h3:before {
    content: "MERIT";
    position: absolute;
    font-size: 90px;
    opacity: 0.1;
    color: #6e6e6e;
    font-family: 'Cormorant', serif;
    line-height: 1em;
    top: -55px;
    left: -80px;
    letter-spacing: 0;
}
.txt_color3 {
    color: #000000;
}
#contents2 .box_wrap:last-of-type .box_txt h3:before {
    content: "SELECT";
}
/*
#contents2 .box_wrap .box_txt:before {
    content: "";
    position: absolute;
    height: 1px;
    width: 50%;
    background: black;
    transform: rotate(-45deg);
    right: 0;
    bottom: 0;
    z-index: -1;
    opacity: 0.1;
}
*/
section#contents2 {
    padding: 0 8%;
    margin-top: -50px;
    margin-right: -5%;
}
#contents2 .box_wrap .box_img figure {
    padding-top: 100%;
}
#contents2 .box_wrap .box_txt {
    width: 55%;
    padding-right: 6%;
    max-width: 500px;
    position: relative;
    z-index: 2;
}

#contents2 .box_wrap .box_img:before {
    width: 70%;
    height: 70%;
    content: "";
    position: absolute;
    background: url(Dup/img/bg4.jpg);
    right: -30px;
    bottom: -30px;
    background-size: 650px;
    opacity: 1;
}
#contents2 .box_wrap .box_img {
    width: 45%;
    
}
.box_img{
    position: relative;
}
#contents2 .box_wrap {
    display: flex;
    max-width: 1380px;
    margin: auto;
    align-items: center;
    justify-content: space-between;
}

p {
    letter-spacing: 0px;
}
#contents1 figure {
    padding-top: 70%;
}
#contents1 span.font_en {
    font-size: calc(70px + 5vw);
    position: absolute;
    right: 10px;
    top: 5px;
    line-height: 0.8em;
    color: #952344;
    font-weight: 300;
    letter-spacing: 0;
    text-align: right;
}
#pc_nav li, #top_pc_nav li, #footer_nav li {
    max-width: 240px;　
}
.font_en{
   font-family: 'Cormorant', serif;
}
p.catch {
    text-align: center;
    color: white;
    font-size: 24px;
    letter-spacing: 2px;
}
body,.hannari{
    font-family: "游明朝", "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Sawarabi Mincho", "serif";
}
.contents figure img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}
.contents figure{
    position: relative;
    overflow: hidden;
    padding-top: 45%;
}
figure {
    box-shadow: 7px 7px 15px #00000024;
}
body, .txt_color_nomal {
    color: #000000;
}
/*
#contents1 .box_wrap .box_txt:before {
    content: "";
    position: absolute;
    height: 1px;
    width: 60%;
    background: white;
    transform: rotate(-45deg);
    right: -15%;
    bottom: 0;
    z-index: -1;
    opacity: 0.5;
}
*/
.overlay {
    background: #9c7c86 !important;
}
#contents1 .box_wrap .box_txt {
    width: 45%;
    padding-left: 6%;
    box-sizing: border-box;
    position: relative;
    max-width: 650px;
    z-index: 2;
}
#contents1 .box_img {
    width: 55%;
    z-index: 2;
}
#contents1 .box_wrap {
    display: flex;
    align-items: center;
    margin: auto;
}
.box_txt h3 {
    font-size: 22px;
    margin-bottom: 20px;
}
section#contents1 {
    padding: 250px 8%;
    background: #f7ecf0;
    position: relative;
}
section#contents1:before {
    width: 30%;
    height: 100%;
    content: "";
    position: absolute;
    background: url(Dup/img/bg2.jpg);
    top: 0;
    left: 0;
    background-size: 550px;
}
.back1:before {
    background-color: #ffe600;
}
/*--------------------------タブレット----------------------------------*/
@media screen and (max-width:768px){
    #contents1 .box_wrap .box_txt {
    width: 100%;
    padding-left: 0;
    margin-top: 30px;
    background: #f7ecf0;
    padding: 25px;
}
    #contents1 .box_wrap {
    flex-direction: column;
}
#contents1 .box_img {
    width: 100%; 
}
#contents1 .box_wrap .box_txt {
    width: 100%;
    padding-left: 25px;
    margin-top: 30px;
}
section#contents1 {
    padding: 180px 10% 100px;
}
#contents1 span.font_en {
    font-size: calc(40px + 5vw); 
}
#contents2 .box_wrap .box_img figure {
    padding-top: 150%;
}
.box_txt h3 {
    font-size: 20px;
    margin-bottom: 20px;
    letter-spacing: 1px;
}
#contents2 .box_wrap .box_txt h3:before{
    font-size:70px;
        top: -40px;
    left: -40px;
}
#contents2 .box_wrap .box_txt {
    width: 50%;
    padding-right: 0%; 
}
section#contents2 {
    padding: 0 8%;
    margin-top: 100px;
    margin-right: 0;
}
#contents3 {
    margin-top: 200px;
    margin-bottom: 100px;
    padding: 8% 0 10%;
    padding-left: 10%;
    padding-right: 10%;
    box-sizing: border-box;

    width: 100%;
    margin-left: auto;
    position: relative;
    max-height: 900px;
}
section#contents3 .box_wrap .box_img figure {
    padding-top: 80%;
}
section#contents3 .box_wrap .box_txt {
    width: 100%;
    padding-left: 0;
    margin-left: auto;
    margin-top: 0px;
    padding: 0 5%;
    background: #003441;
    padding: 5%;
}
#contents3 span.font_en{
    font-size: calc(40px + 5vw);
}
#contents3 .box_txt h3 {
    margin-bottom: 30px;
    left: -40px;
}
#contents3 .box_txt h3 {
    margin-bottom: 30px;
    left: 0;
}
section#contents3 .box_wrap {
    flex-direction: column;
    position: relative;
    top: -150px;
}
#overlay .left li {
    max-width: 300px;
    letter-spacing: 1px;
    white-space: nowrap;
}
.cms_title h3 {
    font-size: 38px;
    font-weight: 300;
    margin-top: 10px;
}
.no_flow .flex_order2_tb {
    width: 100%!important;
}
section#contents3 .box_wrap .box_img {
    width: 100%;
    position: static;
    bottom: -50px;
}
section#youtube h3 {
    font-size: 70px;
}
.yt_wrap iframe {
    width: 100%;
    height: 400px;
}
}

/*--------------------------------------------スマホ--------------------------------------*/
@media screen and (max-width:667px){
    section#youtube h3 {
    font-size: 40px; 
    }
    section#youtube {
    text-align: center;
    padding: 50px 0 0;
}
.yt_wrap iframe {
    width: 100%;
    height: 200px;
}
    p.catch {
    text-align: center;
    color: white;
    font-size: 20px;
    letter-spacing: 0px;
}
section#contents1:before {
 
    top: 0;
    left: 0;
}
#contents1 span.font_en{
    color:white;
}
section#contents1 {
    padding: 150px 8% 50px;

    position: relative;
}
#contents1 span.font_en {
    font-size: calc(38px + 5vw);
}
#contents2 .box_wrap {
    flex-direction: column;
}
#contents2 .box_wrap .box_txt {
    width: 100%;
    order: 2;
    margin-top: 80px;
    padding-right: 0%;
}
#contents2 .box_wrap .box_img {
    width: 100%;
}
#contents2 .box_wrap .box_img figure {
    padding-top: 100%;
}
#contents2 .box_wrap .box_txt h3:before {
    font-size: 50px;
    top: -25px;
    left: -20px;
}
#contents3:before {
    width: 35%;
    height: 100%;

}
section#contents3 .box_wrap .box_txt{
    padding:0;
}
section#contents3 .box_wrap .box_txt ul li {
    font-size: 16px;
    position: relative;
    margin: 30px 0;
    line-height: 1.3em;
    padding-left:40px;
}
section#contents3 .box_wrap .box_txt ul li:before{
font-size: 26px;
    line-height: 1em;
    top: -5px;
}
section#contents3 .box_wrap {
    top: -80px;
    padding: 0 8%;
}
#contents3{
        padding: 8% 0 0%;
}
#contents3 span.font_en {
    font-size: calc(38px + 5vw);
    left: 0;
}
.page_title_box h2 {
    font-size: 34px;
    white-space:nowrap;
}
#cms_2-f .cate {
    border: 0;
    padding: 0;
}
#page_title .page_title_box {
    padding-bottom: 28px;
    background: none;
    width: 100%;
}
.no_flow .box_txt1, .no_flow .box_txt2 {
    padding-left: 0;
    padding-top: 0;
}
.no_flow .box_wrap{
    padding-left:0 !important;
}
#page_title:before {
    background-color: rgb(64 64 64 / 60%);
}
#banner {
    width: 200px;
}
 .box_txt h3 {
    font-size: 18px;
    margin-bottom: 20px;
    letter-spacing: 0;
    white-space: nowrap;
}
  #contents2 .box_wrap .box_img:before {
    width: 90%;
    height: 90%;
    background-size: 250px;
    right: -20px;
    bottom: -20px;
}
.voice .cate_box:after {
    display:none;
}
.voice .cate_box {
    background: red;
    border-radius: 20px;
    border: 0;
    background: #3dbf65;
    color: white;
    padding: 10px;
    width:100%;
    margin-left: auto;
    box-sizing: border-box;
    position: relative;
}
.voice .cate_box:before{
    display:none;
}
.btn_container.grid_12_sp {
    padding-left: 30px;
    margin-top: 10px;
}
}

/*2024-04-10*/
section#youtube{display: none;}