@charset "utf-8";

h1 {
  display:none;
}

#boxVisual {
  position:relative;
  width:100%;
  height:600px;
  overflow:hidden;
  z-index:1;
}
#boxVisual div.autoplay {
  width:100%;
  height:600px;
}
#boxVisual div.autoplay img {
  width:100%;
  height:auto;
}
#boxVisual p#copy {
  position:absolute;
  top:calc( 50% - 30px );
  left:calc( 50% - 170px );
  margin:0 auto;
  width:340px;
  height:80px;
  text-indent:-9999px;
  background:url("../img/copy_visual.png") no-repeat center center;
  background-size:340px 80px;
  z-index:100;
}

.areaSectionSpacing {
  height:50px;
}

.boxSectionBorder {
  position:relative;
  margin:75px 0 10px;
  padding:140px 75px 15px 75px;
  width:auto;
  border-top:1px solid #f2c1c7;
  border-left:1px solid #f2c1c7;
  border-top-left-radius:50px;
  z-index:1;
}
.boxSectionNoBorder {
  position:relative;
  margin:100px 0 100px;
  padding:90px 75px 15px 75px;
  width:auto;
  z-index:1;
}
.boxSectionNoBorder h2,
.boxSectionBorder h2 {
  position:absolute;
  display:block;
  top:-68px;
  left:calc( 50% - 90px );
  width:180px;
  height:136px;
  font-family: "Shippori Mincho", serif;  
  font-size:24px;
  font-weight:normal;
  color:#fff;
  letter-spacing:0.2em;
  line-height:1.3em;
  text-align:center;
  background:url("../img/bg_h2.png") no-repeat center center;
  background-size:180px 136px;
  z-index:2;
}
.boxSectionNoBorder h2 {
  letter-spacing:0em;
}
.boxSectionNoBorder h2 span {
  display:block;
  padding-top:50px;
  text-align:center;
}
.boxSectionBorder h2 span {
  display:block;
  padding-top:30px;
  text-align:center;
}
.boxSchedule {
  margin:0 auto;
  padding:80px 0 10px;
  width:900px;
  border:1px solid #f2c1c7;
  border-radius:10px;
}
.boxContact {
  margin:0 auto 80px;
  padding:80px 0 10px;
  width:900px;
  border:1px solid #707070;
  border-radius:10px;
}

.boxBlock {
  position:relative;
  margin:0 0 60px;
  padding:70px 60px 50px;
  width:auto;
  border:4px dotted #f2c1c7;
  z-index:3;
}
.boxBlock h3 {
  position:absolute;
  top:-28px;
  left:calc( 50% - 140px );
  width:280px;
  height:56px;
  font-family: "Shippori Mincho", serif;  
  font-size:18px;
  font-weight:normal;
  color:#fff;
  letter-spacing:0em;
  line-height:1.2em;
  text-align:center;
  background:url("../img/bg_h3.png") no-repeat center center;
  background-size:200px 56px;
  z-index:4;
}
.boxSectionBorder h3 span {
  display:block;
  padding-top:17px;
  text-align:center;
}
.boxBlock h4 {
  display:block;
  height:60px;
  background:url("../img/bg_line_dot.png") repeat-x left center;
  background-size:300px 7px;
}
.boxBlock h4 span {
  display:block;
  padding:12px 0;
  width:7.0em;
  font-family: "Shippori Mincho", serif;  
  font-size:26px;
  font-weight:normal;
  color:#707070;
  letter-spacing:0em;
  line-height:1.2em;
  background:#fff;
}
.boxBlock h5 {
  display:block;
  margin:24px 0 18px 0;
  padding:9px 0;
  width:200px;
  font-family: "Shippori Mincho", serif;  
  font-size:16px;
  font-weight:normal;
  color:#f2c1c7;
  letter-spacing:0em;
  line-height:1.2em;
  text-align:center;
  border:2px solid #f2c1c7;
  border-radius:5px;
}
.boxBlock .boxBunbenTitle {
  position:relative;
  margin-bottom:20px;
  height:140px;
  z-index:3;
}
.boxBlock .boxBunbenTitle_3 {
  margin-top:30px;
  height:75px;
}
.boxBlock .boxBunbenTitle_4 {
  margin-top:30px;
  height:90px;
}
.boxBlock .boxBunbenTitle h4 {
  position:absolute;
  bottom:0;
  left:0;
  width:100%;
  z-index:4;
}
.boxBlock .boxBunbenTitle div {
  position:absolute;
  top:0;
  right:0;
  text-align:right;
  z-index:5;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleSpace {
  right:311px;
  width:30px;
  height:75px;
  background:#fff;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage1 {
  width:180px;
  height:140px;
  background:#fff;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage1 img {
  width:auto;
  height:140px;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage3 {
  width:311px;
  height:75px;
  background:#fff;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage3 img {
  width:auto;
  height:75px;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage3 a {
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage3 a:hover {
  opacity:0.75;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage4 {
  width:150px;
  height:90px;
  background:#fff;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage4 img {
  width:auto;
  height:90px;
}
.boxBlock ul {
  padding-top:20px;
  font-size:18px;
}
.boxBlock ul li {
  margin-left:20px;
  list-style-type:disc;
}

.boxBlock dl {
  padding:0;
}
.boxBlock dl dt {
}
.boxBlock dl dd {
  margin-top:-1.6em;
  margin-left:4.5em;
  margin-bottom:0.5em;
}

.boxBlock .boxFramePink {
  margin-top:30px;
  padding:10px 40px 30px 40px;
  border:2px solid #f2c1c7;
}

.tableBunbenArchive {
  margin-top:30px;
  border:1px solid #9d9d9d;
  border-radius:12px;
}
.tableBunbenArchive table {
  width:100%;
  font-size:18px;
  line-height:1.5em;
}
.tableBunbenArchive table tr th {
  padding-top:15px;
  font-family: "Shippori Mincho", serif;  
  font-size:24px;
  letter-spacing:0.1em;
}
.tableBunbenArchive table tr th.wide {
  padding-top:18px;
  padding-bottom:18px;
}
.tableBunbenArchive table tr th span {
  font-size:15px;
}
.tableBunbenArchive table tr td {
  padding:4px 0;
  text-align:center;
}
.tableBunbenArchive table tr td.unit {
  padding-bottom:9px;
  padding-right:9px;
  text-align:right;
  font-size:15px;
}
.tableBunbenArchive table tr td.label {
  padding-top:9px;
  padding-bottom:9px;
  font-size:16px;
}
.tableBunbenArchive table tr td.wide {
  padding-top:18px;
  padding-bottom:18px;
}
.tableBunbenArchive table tr th.line_b,
.tableBunbenArchive table tr td.line_b {
  border-bottom:1px solid #9d9d9d;
}
.tableBunbenArchive table tr td.line_l {
  border-left:1px solid #9d9d9d;
}
.tableBunbenArchive table tr td.line_ld {
  border-left:4px double #9d9d9d;
}
.tableBunbenArchive table tr td.note {
  padding:9px 0;
  font-size:15px;
}
.tableBunbenArchive table tr td.space_t {
  padding-top:18px;
}
.tableBunbenArchive table tr td.space_b {
  padding-bottom:18px;
}

.boxBanner {
  margin:25px auto;
}
.boxBanner a {
  display:block;
  margin:0 auto;
  text-indent:-9999px;
}
.boxBanner a:hover {
  opacity:0.75;
}
#BtnBridal a {
  width:551px;
  height:109px;
  background:url("../img/btn_top_bridal.png") no-repeat center center;
  background-size:cover;
}

#listWomenMenu {
  margin:0 75px 200px;
}
#listWomenMenu ul {
  list-style:none;
}
#listWomenMenu ul li {
  float:left;
  width:calc(33% - 4px);
  list-style:none;
}
#listWomenMenu ul li:nth-child(1),
#listWomenMenu ul li:nth-child(2) {
  padding-right:1%;
}
#listWomenMenu ul li a {
  position:relative;
  height:150px;
  font-size:20px;
}
#listWomenMenu ul li a span {
  display:block;
  position:absolute;
  top:95px;
  left:0;
  width:100%;
}
#listWomenMenu ul li a img {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:auto;
  border-top-left-radius:10px;
  border-top-right-radius:10px;
}

#boxWomensDoctor {
  position:relative;
  margin:20px auto 80px;
  width:710px;
  height:240px;
  z-index:1;
}
#boxWomensDoctor img {
  width:100%;
  height:100%;
}
#boxWomensDoctor #boxBtnDocterMore {
  position:absolute;
  bottom:-33px;
  right:-45px;
  z-index:2;
}
#boxWomensDoctor #boxBtnDocterMore a {
  display:block;
  padding:25px 0;
  width:90px;
  text-decoration:none;
  font-family: "Shippori Mincho", serif;  
  font-size:16px;
  font-weight:normal;
  color:#f2c1c7;
  letter-spacing:0em;
  line-height:1.2em;
  text-align:center;
  background:#fff;
  border:2px solid #f2c1c7;
  border-radius:10px;
}
#boxWomensDoctor #boxBtnDocterMore a:hover {
  opacity:0.75;
}

.boxSchedule .ScheduleDate {
  padding:15px 0;
  font-family: "Shippori Mincho", serif;  
  font-size:16px;
  font-weight:normal;
}
.boxSchedule .ScheduleDate strong {
  font-size:26px;
}
.boxSchedule table {
  width:100%;
}
.boxSchedule table tr th {
  padding:9px 0;
  border-top:2px solid #f2c1c7;
  border-bottom:2px solid #f2c1c7;
}
.boxSchedule table tr .line_vl1 {
  border-left:2px solid #f2c1c7;
}
.boxSchedule table tr .line_vl2 {
  border-left:1px solid #f2c1c7;
}
.boxSchedule table tr .line_hb1 {
  border-bottom:2px solid #f2c1c7;
}
.boxSchedule table tr .line_hb2 {
  border-bottom:1px solid #f2c1c7;
}
.boxSchedule table tr td {
  padding:12px 0 15px;
  text-align:center;
}
.boxSchedule table tr td.am {
  color:#fff;
  line-height:1.0em;
  background:#f2c1c7;
}
.boxSchedule table tr td.pm {
  color:#fff;
  line-height:1.0em;
  background:#ddd4ce;
}
.boxSchedule table tr td span {
  display:block;
  font-size:14px;
  line-height:1.0em;
}
.boxSchedule .ScheduleNote {
  padding:15px 100px;
  font-size:16px;
  line-height:1.5em;
}


#boxWomenReserve {
  position:relative;
  margin-bottom:70px;
  padding:50px 0 70px;
  text-align:center;
}
#boxWomenReserve #btnWebReserve {
  margin:0 auto;
  width:160px;
  height:160px;
}
#boxWomenReserve #btnWebReserve a {
  display:block;
  padding:55px 0;
  font-family: "Shippori Mincho", serif;  
  font-size:20px;
  font-weight:normal;
  color:#fff;
  letter-spacing:0.1em;
  line-height:1.2em;
  text-align:center;
  text-decoration:none;
  background:#adc5dd;
  border-radius:50%;
}
#boxWomenReserve #btnWebReserve a:hover {
  opacity:0.75;
}
#boxWomenReserve #btnHowtoReserve {
  position:absolute;
  bottom:0;
  left:calc( 50% + 50px );
}
#boxWomenReserve #btnHowtoReserve a {
  display:block;
  padding:15px 0;
  width:100px;
  text-decoration:none;
  font-family: "Shippori Mincho", serif;  
  font-size:16px;
  font-weight:normal;
  color:#f2c1c7;
  letter-spacing:0em;
  line-height:1.2em;
  text-align:center;
  background:#fff;
  border:2px solid #f2c1c7;
  border-radius:10px;
}
#boxWomenReserve #btnHowtoReserve a:hover {
  opacity:0.75;
}
#boxWomenReserve #boxBorderDot {
  position:absolute;
  bottom:30px;
  left:50%;
  width:100px;
  height:40px;
  border-left:3px dotted #f2c1c7;
  border-bottom:3px dotted #f2c1c7;
}

#areaWomensBanner {
  margin:100px auto 150px;
  width:700px;
}
#areaWomensBanner a {
  display:block;
  margin:20px;
}
#areaWomensBanner a img {
  width:100%;
  height:auto;
}
#areaWomensBanner a:hover {
  opacity:0.75;
}

.boxContact table {
  margin:30px 0;
  width:100%;
}
.boxContact table tr {
}
.boxContact table tr td {
  padding:9px 0;
  font-family: "Shippori Mincho", serif;  
  font-size:20px;
  font-weight:normal;
  text-align:center;
  border-bottom:2px solid #f2c1c7;
}
.boxContact table tr td span {
  font-size:16px;
}
.boxContact table tr td.line_t {
  border-top:2px solid #f2c1c7;
}
.boxContact table tr td.line_l {
  border-left:2px solid #f2c1c7;
}


.itemBgImage_1 {
  background:url("../img/bg_image_1.png") no-repeat calc( 100% - 50px ) 50px;
  background-size:90px 90px;
}
.itemBgImage_2 {
  background:url("../img/bg_image_2.png") no-repeat 50px 50px;
  background-size:90px 90px;
}
.itemBgImage_3 {
  background:url("../img/bg_image_3.png") no-repeat calc( 100% - 50px ) 50px;
  background-size:90px 90px;
}
.itemBgImage_4 {
  background:url("../img/bg_image_4.png") no-repeat 50px 50px;
  background-size:90px 90px;
}
.itemBgImage_5 {
  background:url("../img/bg_image_5.png") no-repeat calc( 100% - 50px ) 50px;
  background-size:90px 90px;
}
p.spaceBgImage {
  padding-top:80px;
}





#boxImageMatsunobu {
  background:url("../../common/img/image_matsunobu_w.png") no-repeat center center;
  background-size:264px 315px;
}


/* ------------------------------------------------------------ */
/*   For SmartPhones                                            */
/* ------------------------------------------------------------ */
@media print, screen and (max-width: 640px) {

#boxVisual {
  height:400px;
}
#boxVisual div.autoplay {
  height:400px;
}
#boxVisual div.autoplay img {
  width:auto;
  height:400px;
}
#boxVisual p#copy {
  position:absolute;
  top:calc( 50% - 30px );
  left:calc( 50% - 110px );
  margin:0 auto;
  width:220px;
  height:51px;
  text-indent:-9999px;
  background:url("../img/copy_visual.png") no-repeat center center;
  background-size:220px 51px;
  z-index:2;
}

.boxSectionBorder {
  position:relative;
  margin:75px 10px 10px;
  padding:140px 10px 15px;
  width:auto;
  z-index:1;
}
.boxSectionNoBorder {
  position:relative;
  margin:100px 0 100px;
  padding:90px 10px 15px;
  width:auto;
  z-index:1;
}

.tableBunbenArchive table {
  font-size:14px;
  line-height:1.3em;
}

.tableBunbenArchive table tr th {
  padding-top:12px;
  font-size:20px;
}
.tableBunbenArchive table tr td.label {
  padding-top:9px;
  padding-bottom:9px;
  font-size:13px;
}
.tableBunbenArchive table tr td.note {
  padding:9px 0;
  font-size:12px;
}
.tableBunbenArchive table tr td span {
  display:block;
  padding-top:0px;
  font-size:10px;
}
.tableBunbenArchive table tr td p {
  font-size:15px;
}


#BtnBridal a {
  width:auto;
  height:75px;
  background:url("../img/btn_top_bridal.png") no-repeat center center;
  background-size:contain;
}

.boxSchedule {
  margin:0 10px;
  padding:80px 0 10px;
  width:auto;
  border:1px solid #f2c1c7;
  border-radius:10px;
}
.boxContact {
  margin:0 10px 50px;
  padding:80px 0 10px;
  width:auto;
  border:1px solid #707070;
  border-radius:10px;
}

.boxBlock {
  position:relative;
  margin:0 0 60px;
  padding:40px 20px 30px;
  width:auto;
  border:4px dotted #f2c1c7;
  z-index:3;
}

.boxBlock .boxBunbenTitle {
  position:relative;
  margin-bottom:10px;
  height:70px;
  z-index:3;
}
.boxBlock .boxBunbenTitle_3 {
  margin-top:30px;
  height:37px;
}
.boxBlock .boxBunbenTitle_4 {
  margin-top:30px;
  height:45px;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleSpace {
  display:none;
  right:311px;
  width:30px;
  height:75px;
  background:#fff;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage1 {
  width:90px;
  height:70px;
  background:#fff;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage1 img {
  width:auto;
  height:70px;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage3 {
  width:156px;
  height:37px;
  background:#fff;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage3 img {
  width:auto;
  height:37px;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage4 {
  width:75px;
  height:45px;
  background:#fff;
}
.boxBlock .boxBunbenTitle div.boxBunbenTitleImage4 img {
  width:auto;
  height:45px;
}


#listWomenMenu {
  margin:0 50px 100px;
}
#listWomenMenu ul {
  list-style:none;
}
#listWomenMenu ul li {
  float:none;
  margin-bottom:5px;
  padding:0;
  width:100%;
  list-style:none;
}
#listWomenMenu ul li a {
  position:relative;
  height:100px;
  font-size:16px;
}
a.BannerRectBottom {
  background:none;
}

#boxWomensDoctor {
  position:relative;
  margin:10px 10px 30px;
  width:auto;
  height:auto;
  z-index:1;
}
#boxWomensDoctor #boxBtnDocterMore {
  position:absolute;
  bottom:-33px;
  right:-15px;
  z-index:2;
}
#boxWomensDoctor #boxBtnDocterMore a {
  display:block;
  padding:15px 0;
  width:80px;
  font-size:14px;
}

.boxSchedule .ScheduleDate {
  padding:15px 0;
  font-family: "Shippori Mincho", serif;  
  font-size:14px;
  font-weight:normal;
}
.boxSchedule .ScheduleDate strong {
  font-size:18px;
}
.boxSchedule .ScheduleNote {
  padding:15px 20px;
  font-size:16px;
  line-height:1.5em;
}

#boxWomenReserve #btnWebReserve {
  margin:0 auto;
  width:120px;
  height:120px;
}
#boxWomenReserve #btnWebReserve a {
  display:block;
  padding:40px 0;
  font-family: "Shippori Mincho", serif;  
  font-size:16px;
}
#boxWomenReserve #btnHowtoReserve a {
  display:block;
  padding:15px 0;
  width:100px;
  text-decoration:none;
  font-family: "Shippori Mincho", serif;  
  font-size:14px;
}
#boxWomenReserve #boxBorderDot {
  position:absolute;
  bottom:30px;
  left:50%;
  width:60px;
  height:40px;
}

.boxContact table tr td {
  padding:9px 0;
  font-size:16px;
}

#areaWomensBanner {
  margin:10px auto 100px;
  width:auto;
}

.itemBgImage_1 {
  background:url("../img/bg_image_1.png") no-repeat calc( 100% - 20px ) 30px;
  background-size:60px 60px;
}
.itemBgImage_2 {
  background:url("../img/bg_image_2.png") no-repeat 20px 30px;
  background-size:60px 60px;
}
.itemBgImage_3 {
  background:url("../img/bg_image_3.png") no-repeat calc( 100% - 20px ) 30px;
  background-size:60px 60px;
}
.itemBgImage_4 {
  background:url("../img/bg_image_4.png") no-repeat 20px 30px;
  background-size:60px 60px;
}
.itemBgImage_5 {
  background:url("../img/bg_image_5.png") no-repeat calc( 100% - 20px ) 30px;
  background-size:60px 60px;
}
p.spaceBgImage {
  padding-top:60px;
}


#boxImageMatsunobu {
  width:200px;
  height:238px;
  background-size:200px 238px;
}
 

}

