@charset "utf-8";

section#main_block { padding-top:100px; background-color:#fefefe; }

div#main_block_bg { position:relative; /* background-image: url("../img/main_history.jpg");  background-repeat: no-repeat; background-position: center top; background-size: contain; background-attachment: fixed; */ }
div#main_block_bg::before { content: ""; display: block; position:fixed; top:0; left:0; z-index: -1; width:100%; height:80%; background-repeat: repeat-y; background-image:url('../img/main_bridal.jpg'); background-position: center -180px; background-size: cover; }

div#main_block_bg > h2 { font-size:22px; letter-spacing: 0.2em; font-weight: normal; position:absolute; top:300px; left:50%; transform: translateX(-50%); }
div#main_block_bg > h2::before { content: ""; position:absolute; top:-110%; left:50%; transform: translateX(-50%); width:40px; height:40px; background-image: url("../img/logo_pink.png"); background-size: contain; background-repeat: no-repeat; background-position: center; }
div#main_block_bg > p { position:absolute; top:350px; left:50%; transform: translateX(-50%); }

@media screen and (max-width:900px) {
    section#main_block { padding-top:70px; background-color:#fefefe; }
    section#main_block::before { height:70px; }
    div#main_block_bg::before { height:50%; background-image:url('../img/main_bridal.jpg'); background-repeat: no-repeat; background-position: top center; background-size: contain; }
    div#main_block_bg > h2 { font-size:18px; top:230px; }
    div#main_block_bg > h2::before{ top:-110%; width:32px; height:32px; }
    div#main_block_bg > p { top:275px; width:100%; }
}

#white_bg { background-color:#fefefe; }

#content_block { padding:180px 0 100px; width:720px; margin:auto; margin-top:200px; text-align: left; }
#content_block > h3 { padding-top:6px; padding-bottom:6px; padding-left:40px; margin-bottom:50px; text-align:left; font-size:22px; font-weight: normal; letter-spacing: 0.1em; border-top:solid 1px #de7777; border-bottom:solid 1px #de7777; position:relative; }
#content_block > h3::after { content: ""; position:absolute; width:200px; height:100%; background-image: url("../img/title_icon_pink.png"); background-size: contain; background-size: contain; background-repeat: no-repeat; top:0; right:0; }
@media screen and (max-width:900px) {
    #content_block { padding:130px 0 80px; width:84%; margin-top:160px; }
    #content_block > h3 { font-size:16px; letter-spacing: 1px; padding-left:10px; margin-bottom:30px; }
    #content_block > h3::after { right:10px; bottom:0; width:120px; height:100%; background-image: url("../img/title_icon_pink_sp.png"); background-size: cover; background-repeat: no-repeat; position: absolute; z-index: 1; }
    #content_block > h3 > span { font-size:16px; }
}

#content_block div.txt_block { width:640px; margin:0 auto 20px; }
#content_block div.txt_block > p { margin-bottom:15px; }
#content_block div.subtitle { width:640px; margin:0 auto 20px; }
#content_block div.subtitle > p { color:#de7777; position:relative; }
#content_block div.subtitle > p::after { content:""; display: block; position:absolute; width:30%; height:1px; top:49%; left:13em; background-color:#de7777; }

#content_block div.info_block { width:640px; margin:40px auto 80px; border:solid 1px #de7777; padding:3% 5%; }
#content_block div.info_block > div { display: flex; }
#content_block div.info_block > div > p { width:30%; }
@media screen and (max-width:900px) {
    #content_block div.txt_block { width:100%; }
    #content_block div.subtitle { width:100%; }
    #content_block div.info_block { width:100%; padding:5%; }
    #content_block div.info_block > div > p { width:47%; }
}

#content_block div.contact_block { width:640px; margin:0 auto 40px; }
#content_block div.contact_block h4 { font-size:18px; font-weight: normal; color:#fefefe; background-color:#de7777; padding:1px 20px; border-radius: 3px; letter-spacing: 1px; margin-bottom:15px; }
#content_block div.contact_block p { line-height: 1.4; }
#content_block div.contact_block p.s_title { font-size:18px; color:#de7777; line-height: 1.8; margin:5px auto; }
@media screen and (max-width:900px) {
    #content_block div.contact_block { width:100%; }
    #content_block div.contact_block h4 { font-size:16px; }
    #content_block div.contact_block p.s_title { font-size:16px; line-height: 1.5; }
}
