.BodyMain {
    background: url("images/back.jpg") 50% 0 no-repeat #fff;
    margin: 0;
    text-align: center;
    font-family: "¥Ò¥é¥®¥Î³Ñ¥´ Pro W3","Hiragino Kaku Gothic Pro",HiraKakuPro-W3,"¥á¥¤¥ê¥ª",Meiryo,verdana,sans-serif;
    -webkit-text-size-adjust: 100%;
}

header {
    height: 80px;
    background: #fff0af;
    text-align: center;
    border-bottom: 2px solid #ffcc00;
}
header .tel {
    margin: 0 0 0 410px;
}

.main {
    width: 960px;
    text-align: center;
    padding: 20px 0 40px 0;
}

h1 {
    margin: 0 auto;
    padding: 12px 0 0;
    font-size: 75%;
    font-weight: normal;
    text-align: right;
    letter-spacing: 0.05em;
}
h2 {
    margin: 0 auto;
    padding: 0 0 27px 0;
    font-size: 85%;
    font-weight: normal;
    letter-spacing: 0.05em;
}

div, p, table {
    margin: auto;
}
section {
    width: 960px;
    margin: auto;
    padding: 20px 0 40px;
}
section::after {
    content: "";
    display: block;
    clear: both;
}
.clear {
    clear: both;
}
.clearfix::after {
    content: "";
    display: block;
    clear: both;
}

.center {
    text-align: center;
}
.left {
    text-align: left;
}
.right {
    text-align: right;
}
img {
    border: none;
}
a {
    text-decoration: none;
}
.opacity a:hover img {
    opacity: 0.70;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
}

hr {
    color: #ccc;
    background-color: #ccc;
    height: 1px;
    border: none;
    padding: 0;
}
.mark {
    font-size: 80%;
    margin: 0 0.5em 0 0;
    color: #ffcc00;
}
.mini {
    font-size: 80%;
}
.mini90 {
    font-size: 90%;
    letter-spacing: 0.08em;
}
.space1 {
    letter-spacing: 0.08em;
}
.space2 {
    letter-spacing: 0.08em;
    padding: 0 0 0 0.1em;
}

.ya {
    margin: 0 7px 2px 0;
    vertical-align: middle;
}
.yaR {
    margin: 0 7px 2px 20px;
    vertical-align: middle;
}
.ya1 {
    margin: 0 0 6px 5px;
    vertical-align: middle;
}
.ya1R {
    margin: 0 70px 6px 5px;
    vertical-align: middle;
}

.waku {
    border: 1px solid #ccc;
}

.line1 {
    border-bottom: 4px dotted #ffcc00;
}
.line2 {
    border-left: 4px dotted #ffcc00;
}
.line3 {
    border-bottom: 2px dotted #c6ad9c;
}

.TD20 {
    line-height: 20px;
}
.TD30 {
    line-height: 30px;
}
.TD30Lj {
    line-height: 30px;
    text-align: left;
    text-align: justify;
}

.pad1 {
    padding: 15px 0;
}
.pad2 {
    padding: 30px 0;
}
.pad3 {
    padding: 10px 0 20px 0;
}
.pad4 {
    padding: 5px 0;
}
.pad5 {
    padding: 7px 0 0;
}
.pad6 {
    padding: 35px 0 10px;
}
.pad7 {
    padding: 0 0 40px;
}
.mar0 {
    margin: 20px;
}
.mar1 {
    margin: 20px 0;
}
.mar2 {
    margin: 0 20px;
}
.mar3 {
    margin: 20px 20px 0 0;
}
.mar4 {
    margin: 5px 100px 5px 0;
}
.mar5 {
    margin: 0 10px;
}
.mar6 {
    margin: 0 0 0 20px;
}
.mar7 {
    margin: 0 0 0 40px;
}
.mar8 {
    margin: -15px auto 40px;
}

.w930 {
    width: 930px;
}
.box95 {
    width: 95%;
}

.L0 {
    float: left;
}
.R0 {
    float: right;
}
.L1 {
    width: 49%;
    float: left;
}
.R1 {
    width: 49%;
    float: right;
}
.Lw33 {
    width: 33.25%;
    float: left;
}
.Lw25 {
    width: 24.95%;
    float: left;
}

.pic1 {
    width: 200px;
    height: auto;
}

#slide {
    float: left;
    width: 480px;
    height: 600px;
}
.slideR {
    float: right;
    width: 460px;
}
.slideR img {
    margin: 1px 0 2px;
}

#PageTitle {
    height: 155px;
    border-bottom: 4px dotted #ffcc00;
    margin: 0 0 45px;
}

.backcopy {
    width: 960px;
    height: 110px;
    background: url("images/back_copy.gif") no-repeat;
    text-align: left;
}
.backcopy img {
    margin: 18px 0 0 10px;
}

.flexW1 {
    display: flex;
}

table.company {
    width: 900px;
    margin: 0 auto 20px;
}
.company td.TD1 {
    width: 150px;
    line-height: 35px;
    border-bottom: 1px dotted #ccc;
    background: url("images/back_text1.gif") 0 100% repeat-x;
    padding: 10px 0;
    text-align: center;
    letter-spacing: 0.07em;
}
.company td.TD2 {
    width: 750px;
    border-bottom: 1px dotted #ccc;
    padding: 10px 0 10px 30px;
    text-align: left;
    letter-spacing: 0.07em;
}
.company td.TD3 {
    width: 550px;
    border-bottom: 1px dotted #ccc;
    padding: 10px 0 10px 30px;
    text-align: left;
    letter-spacing: 0.07em;
}
.company td.TD4 {
    width: 200px;
    border-bottom: 1px dotted #ccc;
    padding: 8px 0 15px 20px;
    text-align: center;
    font-size: 90%;
    letter-spacing: 0.07em;
}

table.price {
    width: 900px;
    margin: 10px auto 40px;
}
.price td.TD0 {
    border-bottom: 1px dotted #ccc;
    background: url("images/back_text1.gif") 0 30% repeat-x;
    padding: 10px 0;
    text-align: center;
    font-size: 90%;
    letter-spacing: 0.07em;
}
.price td.TD1 {
    width: 170px;
    border-bottom: 1px dotted #ccc;
    background: url("images/back_text1.gif") 0 100% repeat-x;
    padding: 10px 0;
    text-align: center;
    font-size: 90%;
    letter-spacing: 0.07em;
}
.price td.TD2 {
    width: 115px;
    border-bottom: 1px dotted #ccc;
    padding: 10px 0;
    text-align: center;
    font-size: 90%;
    letter-spacing: 0.08em;
    line-height: 22px;
}
.price td.TD3 {
    width: 195px;
    border-bottom: 1px dotted #ccc;
    padding: 10px 15px 10px 0;
    text-align: right;
    font-size: 90%;
    letter-spacing: 0.08em;
}
.price td.TD4 {
    width: 420px;
    border-bottom: 1px dotted #ccc;
    padding: 10px 0 10px 15px;
    text-align: left;
    font-size: 90%;
    letter-spacing: 0.07em;
    line-height: 25px;
}
.price td.TD4n {
    width: 425px;
}
.priceTxt1L {
    width: 55%;
    float: left;
}
.priceTxt1R {
    width: 44.9%;
    float: right;
}
.priceTxt2L {
    width: 59.9%;
    float: left;
}
.priceTxt2R {
    width: 40%;
    float: right;
}

.flowL {
    width: 28%;
    float: left;
}
.flowR {
    width: 70%;
    float: right;
}

.qa,
.qaB {
    width: 930px;
    padding: 32px 0 35px;
    border-bottom: 4px dotted #ffcc00;
}
.qa::after,
.qaB::after {
    content: "";
    display: block;
    clear: both;
}
.qaB {
    border: none;
}
.qaL {
    width: 60px;
    float: left;
    margin: 0 15px 0 0;
}
.qaR {
    width: 850px;
    float: left;
    padding: 1em 0 0;
    line-height: 30px;
    text-align: left;
    text-align: justify;
}
.qaMar1 {
    margin: -80px 0 10px 40px;
}
.qaMar2 {
    margin-top: -80px;
}
.open {
    cursor: pointer;
    text-align: left;
}
.open img {
    margin: 0 15px 2px 0;
    vertical-align: middle;
}
.slideBox {
    padding: 15px 0 0;
    display: none;
}

.bridalTxt1 {
    float: left;
    width: 33.3%;
    background: url("images/back_text2.gif") 50% 0 no-repeat;
}
.bridalTxt1 p {
    line-height: 30px;
    letter-spacing: 0.07em;
    padding: 10px 0;
}
.bridalTxt2 {
    float: left;
    width: 49.5%;
    background: url("images/back_text2.gif") 50% 0 no-repeat;
}
.bridalTxt2 p {
    line-height: 30px;
    letter-spacing: 0.07em;
    padding: 10px 0;
}

.modelImg1 {
    padding: 15px 0 65px;
    margin-left: -25px;
}
.modelImg1 img {
    height: 300px;
    border: 1px solid #ccc;
    margin-left: 25px;
}
.modelW1 {
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 35px 0 40px;
    margin: 0 0 40px;
    border-bottom: 2px dotted #c6ad9c;
}
.modelW1 p {
    margin: 0 25px;
}
.modelW1 .txt {
    font-size: 90%;
    line-height: 30px;
    text-align: left;
}


ul.recruitList {
    list-style-image: url("images/mark.gif");
    margin: 0;
    padding: 0 0 0 25px;
}
.recruitList li {
    padding: 5px 0;
}

.event {
    padding: 20px 0 30px;
}

.bottom {
    background: url("images/back_b.jpg") 50% 100% no-repeat #fff;
    border-top: 1px solid #ffcc00;
    padding: 15px 0;
}
.cust {
    width: 960px;
    padding: 10px 0 30px;
}
.custL {
    float: left;
    width: 182px;
    font-size: 90%;
    letter-spacing: 0.07em;
    white-space: nowrap;
}
.custL .p1 {
    text-align: left;
    line-height: 22px;
    margin: 5px 0 4px 12px;
}
.custL .p2 {
    text-align: right;
    margin: 8px 20px 0 0;
}
.custR {
    float: right;
    width: 730px;
    text-align: left;
    letter-spacing: 0.07em;
}
.custR .p1 {
    float: left;
    width: 25%;
    margin: 0 0 0 10px;
}
.custR .p2 {
    float: left;
    width: 54%;
}
.custR .p3 {
    float: left;
    width: 18.5%;
}

.ServiceGroup  {
    float: left;
    width: 33%;
    padding: 7px 0;
}
.ServiceGroup p  {
    padding: 13px 0 13px 35px;
}

.mobiTxt {
    float: left;
    width: 620px;
    font-size: 85%;
    line-height: 25px;
    padding: 20px 0 0;
}
.mobiQr {
    float: right;
    width: 80px;
    padding: 40px 0 0
}

.copyright {
    border-top: 1px solid #ffcc00;
    font-size: 80%;
    padding: 12px 0 15px 0;
}

#fancy h1 {
    margin: -5px auto 25px;
    padding: 0 0 20px;
    color: #330000;
    font-size: 180%;
    text-align: center;
    letter-spacing: 0.05em;
    border-bottom: 4px dotted #ffcc00;
}
