@charset "UTF-8";

/* !Common -------------------------------------------------------------- */

body {
	font-size: 14px; /* 12px; */
	-webkit-text-size-adjust: none;
	line-height: 1.5;
	min-width: 320px;
	background-color: #fff;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
}
.garamond {font-family: 'EB Garamond', serif;}
#wrapper {
	width:100vw;
	overflow: hidden;
}

/* !Base Fonts -------------------------------------------------------------- */
a {
	color: #657392;
	text-decoration: none;
}
/*a:visited {
	color: #00479d;
}*/
/*a:hover,
a:active,
a:focus {
	color: #00479d;
	text-decoration: underline;
}*/
button {
	cursor: pointer;
}

.fwN    { font-weight: normal;}
.fwB    { font-weight: bold;}
.fzSS   { font-size:  78%;}/* base 14px -> 10px */
.fzS    { font-size:  85%;}/* base 14px -> 12px */
.fzM    { font-size: 100%;}
.fzL    { font-size: 115%;}/* base 14px -> 16px */
.fzLL   { font-size: 130%;}/* base 14px -> 18px */
.fzLLL  { font-size: 143%;}/* base 14px -> 20px */
sup     { font-size: 78%; vertical-align: top;}
sub     { font-size: 78%; vertical-align: baseline;}

/* !Inline Align ------------------------------------------------------------ */
.taL    { text-align: left   !important;}
.taC    { text-align: center !important;}
.taR    { text-align: right  !important;}
.vaT    { vertical-align: top    !important;}
.vaM    { vertical-align: middle !important;}
.vaB    { vertical-align: bottom !important;}
.blockC  { margin-right: auto; margin-left: auto; text-align: left;}
* html .blockC { margin-right: 0; margin-left: 0;}
.blockR  { margin-left: auto; text-align: left;}
* html .blockR { margin-left: 0;}

/* !Floats ------------------------------------------------------------------ */
.flL    { display: inline; float: left;}
.flR    { display: inline; float: right;}

/* !editor ------------------------------------------------------------------ */
/*p {
    display: block;
    margin: 1em 0;
}*/
strong { font-weight: bold; }
em { font-style: italic; }
blockquote {
    display: block;
    -webkit-margin-before: 1em;
    -webkit-margin-after: 1em;
    -webkit-margin-start: 40px;
    -webkit-margin-end: 40px;
}

/* img */
.aligncenter {
	display: block;
	margin: 0 auto;
}
.alignright { float: right; }
.alignleft { float: left; }

img[class*="wp-image-"],
img[class*="attachment-"] {
	height: auto;
	max-width: 100%;
}

/* !Drawer -------------------------------------------------------------- */
.drawer--right .drawer-hamburger {
	width: 26px;
	height: 30px;
	padding: 12px 14px;
	z-index: 1000;
}
.drawer--right .drawer-hamburger .btnName {
	color: #c90044;
	display: block;
	font-size: 78%;
	position: absolute;
	left: 10px;
	top: 35px;
}
.drawer--right.drawer-open .drawer-hamburger .btnName {
	display: none;
}
.drawer-nav {
	z-index: 1000;
	background-color: transparent;
}
.drawer-menu li {
	color: #fff;
	text-indent: 1rem;
	border-bottom: 1px solid #eff5f6;
}
/*.drawer-menu li:last-child {
	border-bottom: 1px solid #eff5f6;
}*/
.drawer-menu li a {
	color: #2f3782;
	display: block;
	padding: 10px 0;
}
.drawer-menu .back {
	color: #b3b3b3;
	height: 53px;
	margin-bottom: 10px;
	background-color: transparent;
	display: none;
}

.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
	margin-top: 0;
	background-color: #2e3781;
}
.drawer-overlay {
	background-color: rgba(0,0,0,0.7);
}

/* !Header -------------------------------------------------------------- */
.header,
.header-contact {
	width: 100%;
	height: 55px;
	border-bottom: solid 1px #e5e5e5;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	background-color: #ffffff;
}
.header .logo,
.header-contact .logo{
	width: 155px;
	height: 55px;
}
	.header .logo a,
	.header-contact .logo a {
		display: block;
	}
.header .logo img,
.header-contact .logo img{
	width: 155px;
	height: 55px;
	padding: 8px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

/* !contact -------------------------------------------------------------- */
.header .headerBtnArea-sp {
	display: block;
	position: fixed;
	top: 5px;
	right: 53px;
}
.header .headerBtnArea-sp ul li {
	display: inline-block;
	width: 45px;
	height: 45px;
/*	border: 1px solid #2e3781;*/
	list-style: none;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	cursor: pointer;
}
.header .headerBtnArea-sp ul li a{
	display: block;
}
.headerBtnArea-sp .headerBtn div.appoint,
.headerBtnArea-sp .headerBtn div.contact,
.headerBtnArea-sp .headerBtn div.phone {
	width: auto;
	height: 28px;
}
.header .headerBtnArea-sp li div.contactTxt {
	color: #2e3781;
	font-size: 72%;
	text-align: center;
}
.contact {
	background: url(../img/icon/icn_brochure.png) no-repeat;
	background-position: center 4px;
	background-size: 24px 24px;
}
.phone {
	background: url(../img/icon/icn_phone.png) no-repeat;
	background-position: center 4px;
	background-size: 24px 24px;
}
.header .headerBtnArea-pc {
	display: none;
}
.header nav.gnavi {
	display: none;
}
.header nav.gnavi a,
.photoWeddingModule a,
.reportModule a,
.reportimagelist a {
	color: #fff;
}
/* !Body -------------------------------------------------------------- */
.contents,
.contents-contact {
	width: 100%;
	height: auto;
	margin-top: 55px;
	background-color: #edf2f8;
	min-width: 320px;
	min-height: calc(100vh - 515px);
	 box-sizing: border-box;
}

/* !Footer -------------------------------------------------------------- */
#footer {
	color: #cacaca;
	font-size: 78%;
	display: table;
	width: 100vw;
	height: auto;
	padding: 12px 6px 6px;
	background-color: #323333;
	z-index: 1;
	min-width: 320px;
}
#footer ul.sitemap{
	line-height: 2em;
	display: table-cell;
	width: calc(50% - 6px);
	margin: 0 3px 6px;
	padding: 0 10px;
	float: left;
	list-style: none;
	overflow: hidden;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
#footer ul.sitemap a{
	color: #cacaca;
}
#footer ul.sitemap ul.locationList{
	list-style: none;
	text-indent: 3%;
}
#footer ul.sitemap li i {
	font-size: 230%;
	padding: 9px 8px 5px 0;
}

/* !breadcrumb -------------------------------------------------------------- */
#breadcrumb {
	width: 96%;
	background-color: #edf2f8;
	color: #cacaca;
	display: block;
	padding: 8px 10px 0;
/*	border-bottom: 1px solid #e5e5e5;*/
	z-index: 998;
}
#breadcrumb ol {
	display: block;
	width: 100%;
	list-style: none;
}
#breadcrumb ol:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
#breadcrumb ol li{
	color: #657392;
	font-size: 12px;
	line-height: 15px;
	display: block;
	padding: 0 0 5px;
	float: left;
	list-style: none;
}
#breadcrumb ol li a{
	color: #657392;
	display:inline-block;
}
#breadcrumb ol li a:after{
	color: #657392;
	font-size: 12px;
	content: ">";
	margin: 0 6px;
}

/* !breadcrumb -------------------------------------------------------------- */
.nav-button {
	display: block;
	padding: 12px 0 2px;
	margin: 0 6px;
	border-top: 1px solid #cbdada;
}
.nav-button:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
.nav-button li {
	display: block;
	margin: 0 6px;
	float: left;
}
.nav-button.col1 li {
	width: calc(100% - 12px);
}
.nav-button.col2 li {
	width: calc(50% - 12px);
}
.nav-button li:last-child {
	float: right;
}
.nav-button li button{
	color: #657392;
	font-size: 90%;
	display: block;
	width: 100%;
	padding: 8px 6px 6px;
	background-color: #fff;
	border: 1px solid #657392;
}

/* !Margin ------------------------------------------------------------------ */
.mt00 { margin-top: 0   !important;}
.mt05 { margin-top: 5px !important;}
.mt10 { margin-top:10px !important;}
.mt12 { margin-top:12px !important;}
.mt15 { margin-top:15px !important;}
.mt20 { margin-top:20px !important;}
.mt25 { margin-top:25px !important;}
.mt30 { margin-top:30px !important;}
.mt35 { margin-top:35px !important;}
.mt40 { margin-top:40px !important;}
.mt45 { margin-top:45px !important;}
.mt50 { margin-top:50px !important;}
.mr00 { margin-right: 0   !important;}
.mr05 { margin-right: 5px !important;}
.mr10 { margin-right:10px !important;}
.mr12 { margin-right:12px !important;}
.mr15 { margin-right:15px !important;}
.mr20 { margin-right:20px !important;}
.mr25 { margin-right:25px !important;}
.mr30 { margin-right:30px !important;}
.mr35 { margin-right:35px !important;}
.mr40 { margin-right:40px !important;}
.mr45 { margin-right:45px !important;}
.mr50 { margin-right:50px !important;}
.mb00 { margin-bottom: 0   !important;}
.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom:10px !important;}
.mb12 { margin-bottom:12px !important;}
.mb15 { margin-bottom:15px !important;}
.mb20 { margin-bottom:20px !important;}
.mb25 { margin-bottom:25px !important;}
.mb30 { margin-bottom:30px !important;}
.mb35 { margin-bottom:35px !important;}
.mb40 { margin-bottom:40px !important;}
.mb45 { margin-bottom:45px !important;}
.mb50 { margin-bottom:50px !important;}
.ml00 { margin-left: 0   !important;}
.ml05 { margin-left: 5px !important;}
.ml10 { margin-left:10px !important;}
.ml12 { margin-left:12px !important;}
.ml15 { margin-left:15px !important;}
.ml20 { margin-left:20px !important;}
.ml25 { margin-left:25px !important;}
.ml30 { margin-left:30px !important;}
.ml35 { margin-left:35px !important;}
.ml40 { margin-left:40px !important;}
.ml45 { margin-left:45px !important;}
.ml50 { margin-left:50px !important;}

/* !Padding  ---------------------------------------------------------------- */
.pt00 { padding-top: 0   !important;}
.pt05 { padding-top: 5px !important;}
.pt10 { padding-top:10px !important;}
.pt12 { padding-top:12px !important;}
.pt15 { padding-top:15px !important;}
.pt20 { padding-top:20px !important;}
.pt25 { padding-top:25px !important;}
.pt30 { padding-top:30px !important;}
.pt35 { padding-top:35px !important;}
.pt40 { padding-top:40px !important;}
.pt45 { padding-top:45px !important;}
.pt50 { padding-top:50px !important;}
.pr00 { padding-right: 0   !important;}
.pr05 { padding-right: 5px !important;}
.pr10 { padding-right:10px !important;}
.pr12 { padding-right:12px !important;}
.pr15 { padding-right:15px !important;}
.pr20 { padding-right:20px !important;}
.pr25 { padding-right:25px !important;}
.pr30 { padding-right:30px !important;}
.pr35 { padding-right:35px !important;}
.pr40 { padding-right:40px !important;}
.pr45 { padding-right:45px !important;}
.pr50 { padding-right:50px !important;}
.pb00 { padding-bottom: 0   !important;}
.pb05 { padding-bottom: 5px !important;}
.pb10 { padding-bottom:10px !important;}
.pb12 { padding-bottom:12px !important;}
.pb15 { padding-bottom:15px !important;}
.pb20 { padding-bottom:20px !important;}
.pb25 { padding-bottom:25px !important;}
.pb30 { padding-bottom:30px !important;}
.pb35 { padding-bottom:35px !important;}
.pb40 { padding-bottom:40px !important;}
.pb45 { padding-bottom:45px !important;}
.pb50 { padding-bottom:50px !important;}
.pl00 { padding-left: 0   !important;}
.pl05 { padding-left: 5px !important;}
.pl10 { padding-left:10px !important;}
.pl12 { padding-left:12px !important;}
.pl15 { padding-left:15px !important;}
.pl20 { padding-left:20px !important;}
.pl25 { padding-left:25px !important;}
.pl30 { padding-left:30px !important;}
.pl35 { padding-left:35px !important;}
.pl40 { padding-left:40px !important;}
.pl45 { padding-left:45px !important;}
.pl50 { padding-left:50px !important;}

/* !ウェディングサイトトップ ------------------------- */
section {
	display: block;
	padding: 10px 0;
	margin-top: 10px;
	background: #fff;
}
.sectioninner{
	max-width: 840px;
	margin: 0 auto;
}
section h2.contentTitle {
	color: #343c78;
	padding: 4px 0 4px 36px;
	margin: 0 0 8px;
}
section h2.contentTitleWht {
	color: #fff;
	padding-left: 40px;
}
.subTitle {
	font-size: 85%;
	width: calc(100% - 12px);
	margin: 0 6px;
}

/* タイトルアイコン */
#location {
	background-image: url("../img/icon/icn_wedding.png");
	background-repeat: no-repeat;
	background-size: 26px auto;
	background-position: 5px 120px;
	margin-top:-120px;
	padding-top:120px;
}
#photowedding {
	background-image: url("../img/icon/icn_photo.png");
	background-repeat: no-repeat;
	background-size: 26px auto;
	background-position: 5px 120px;
	margin-top:-120px;
	padding-top:120px;
}
#report {
	background-image: url("../img/icon/icn_report.png");
	background-repeat: no-repeat;
	background-size: 26px auto;
	background-position: 5px 120px;
	margin-top:-120px;
	padding-top:120px;
}
#access {
	background-image: url("../img/icon/icn_access.png");
	background-repeat: no-repeat;
	background-size: 26px auto;
	background-position: 5px 120px;
	margin-top:-120px;
	padding-top:120px;
}
#news {
	background-image: url("../img/icon/icn_newstop.png");
	background-repeat: no-repeat;
	background-size: 26px auto;
	background-position: 5px top;
}
#weddingColumn {
	background-image: url("../img/icon/icn_column2.png");
	background-repeat: no-repeat;
	background-size: 25px auto;
	background-position: 6px 1px;
}
#faq {
	background-image: url("../img/icon/icn_faq2.png");
	background-repeat: no-repeat;
	background-size: 25px auto;
	background-position: 6px 2px;
}
#dress {
	background-image: url("../img/icon/icn_dress2.png");
	background-repeat: no-repeat;
	background-size: 25px auto;
	background-position: 6px 2px;
}
#contact {
	background-image: url("../img/icon/icn_brochure.png");
	background-repeat: no-repeat;
	background-size: 26px auto;
	background-position: 5px top;
}
#facebook {
	background-image: url("../img/page_top/logo_facebook.png");
	background-repeat: no-repeat;
	background-size: 22px auto;
	background-position: 6px 2px;
}
#instagram {
	background-image: url("../img/page_top/logo_instagram.png");
	background-repeat: no-repeat;
	background-size: 22px auto;
	background-position: 6px 2px;
}

/* slider */
#sliderContents {
	position: relative;
}
#sliderContents .slider-catchcopy {
	display: block;
	width: 55%;
	padding: 40px 15px;
	margin: 0;
	background-color: rgba(70, 92, 124, 0.6);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -52%);
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
#sliderContents .slider-catchcopy .inner-box {
	position: relative;
}
#sliderContents .slider-catchcopy .inner-box .deco-top{
	position: absolute;
	top: -60px;
	left: -33px;
	width: 120px;
	opacity: 0.6;
}
#sliderContents .slider-catchcopy .inner-box .deco-bottom{
	position: absolute;
	bottom: -46px;
	right: -33px;
	width: 120px;
	opacity: 0.6;
}
#sliderContents .slider-catchcopy h1{
	color: #fff;
	font-size: 90%;
	font-weight: normal;
	line-height: 20px;
	text-align: center;
}

/* News */
.latestNews {
	display: block;
	padding: 5px 0;
	background-color: #dde5ee;
	position: relative;
	z-index: 98;
}
.latestNews a{
	display: block;
}
.latestNews .newsContainer {
	display: table;
	width: calc(100% - 42px);
	padding: 7px 5px 4px;
	margin-left: 32px;
	position: relative;
	background-color: rgba(255, 255, 255, 1);
	outline: 3px solid #d6cab9;
	border: 1px solid #c1a472;
	box-shadow: 0px 1px 2px 2px #4d4d4d;
	-webkit-box-shadow: 0px 1px 2px 2px #4d4d4d;
	-moz-box-shadow: 0px 1px 2px 2px #4d4d4d;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.latestNews .newsContainer .imgNews {
	position: absolute;
	top: -17px;
	left: -32px;
	width: 80px;
	height: auto;
}
.latestNews .newsContainer dl {
	vertical-align: middle;
	display: table-cell;
	width: 100%;
	padding: 0 10px 0 48px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.latestNews .newsContainer dl dt{
	font-size: 85%;
	color: #979797;
}
.latestNews .newsContainer dl dd{
	color: #333;
}
.latestNews .newsContainer i {
	color: #ad9156;
	font-size: 196%;
	text-align: center;
	vertical-align: middle;
	display: table-cell;
	width: 15px;
}

/* Tab */
.weddingLocation .menuTab {
	margin: 0 0 10px;
}
.weddingLocation .menuTab .tabList {
	font-size: 0;
	width: calc(100% - 12px);
	margin: 0 6px;
	list-style-type: none;
}
.weddingLocation .menuTab .tabList li {
	font-size: 14px;
	display: inline-block;
	width: 50%;
	text-align: center;
}
.weddingLocation .menuTab .tabList .tab01,
.weddingLocation .menuTab .tabList .tab02 {
	color: #657392;
	display: block;
	padding: 4px 0 2px;
	border: 1px solid #657392;
}
/* active */
.weddingLocation .menuTab .tabList .active{}
.weddingLocation .menuTab .tabList .active a {
	color: #fff;
	background-color: #657392;
}
/* inactive */
.weddingLocation .menuTab .tabList .inactive a {
	color: #657392;
}

/*式場*/
.weddingLocation {}
.weddingLocation .locationWrapper {
	font-size: 0;
	width: calc(100% - 6px);
	padding: 0 3px;
}
.weddingLocation .locationWrapper .locationModule {
	font-size: 12px;
	display: inline-block;
	width: calc(50% - 6px);
	padding: 0;
	margin: 0 3px 7px;
	position: relative;
}
.locationWrapper .locationModule a {
	display: block;
	cursor: pointer;
}
.locationWrapper .locationModule img {
	display: block;
	width: 100%;
}
.locationModule span.flag {
	width: auto;
	height: auto;
	position: absolute;
	left: 5px;
	top: 5px;
}
.locationModule span.flag img {
	width: 22px;
}
.locationModule span.flag2 {
	width: auto;
	height: auto;
	position: absolute;
	top: 5px;
	right: 5px;
}
.locationModule span.flag2 img {
	width: 22px;
}
.locationModule h2.countryName {
	color: #fff;
	font-size: 130%;
	font-weight: normal;
	position: absolute;
	left: 5px;
	bottom: 2px;
}
.locationModule .overlay {
	background-image: url("../img/page_top/img_overlay.png");
	background-size: cover;
	position: absolute;
	width: 100%;
	height: 100%;
}

/* style別 */
.styleWrapper {
	display: none;
	width: calc(100% - 12px);
	margin: 0 6px 12px;
}
.styleWrapper .styleModule {
	position: relative;
	width: 100%;
	margin: 6px auto 0;
	background: #fff;
	border-bottom: 1px solid #d9d9d9;
	padding-bottom: 5px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.styleWrapper .styleModule:first-child {
	border-top: 1px solid #d9d9d9;
	padding-top: 5px;
}
.styleWrapper .styleModule a {
	color: #333;
	display: block;
	cursor: pointer;
}
.styleWrapper .styleModule .imgArea {
	display: table;
	width: 100%;
	position: relative;
	line-height: 0.9rem;
}
.styleWrapper .styleModule .imgArea span.styleImg {
	display: block;
	width: 105px;
	height: 80px;
	overflow: hidden;
}
.styleWrapper .styleModule .imgArea span.styleImg img {
	vertical-align: middle;
}
.styleWrapper .styleModule .imgArea span.styleImg.widthimg img {
	width: auto;
	height: 100%;
}
.styleWrapper .styleModule .imgArea span.styleImg.heightimg img {
	width: 100%;
	height: auto;
}
.styleWrapper .styleModule .imgArea span.styleTitle {
	display: table-cell;
	vertical-align: middle;
	width: 100%;
	padding: 0 10px;
}
.styleWrapper .styleModule .styleCaption {
	font-size: 78%;
	color: #919192;
	line-height: 1em;
}
/* font icon */
.styleWrapper .styleModule .imgArea .fa-angle-right {
	color: #657392;
	font-size: 170%;
	vertical-align: middle;
	display: table-cell;
	width: 15px;
}
/* seasrch */
.searchBox img {
	display: none;
}
dl.search1{
	width: calc(100% - 12px);
	margin: 8px 6px 5px;
	background-color: #edf4f7;
	position: relative;
}
dl.search1 dt{
	width: 75%;
}
dl.search1 dt input{
	line-height: 30px;
	width: 100%;
	padding: 1px 10px;
	background: none;
	border: none;
	height: 30px;
}
dl.search1 dd{
	position: absolute;
	top: 0px;
	right: 0px;
	width: 25%;
}
dl.search1 dd button{
	display: block;
	width: 100%;
	height: 30px;
	background: #657392;
	background-image: url("../img/icon/icn_search.png");
	background-size: 20px;
	background-position: center;
	background-repeat: no-repeat;
	border: none;
}

/* moreBtn */
.moreBtn {
	color: #657392;
	line-height: 25px;
	display: block;
	padding: 12px 6px 0;
	margin: 0 6px 0;
	border-top: 1px solid #cbdada;
}
.moreBtn a{
	display: block;
	color: #657392;
	cursor: pointer;
}
.moreBtn .fa-angle-right {
	font-size: 170%;
	color: #657392;
	float: right;
}

/*フォトウェディング*/
.photoWedding .photoWeddingSlider {
	width: calc(100% - 12px);
	margin: 0 6px 6px;
	position: relative;
	top: 0;
	left: 0;
}
.photoWedding .photoWeddingSlider ul li {
	width: calc(40% - 12px);
	height: 140px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	position: relative;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.photoWedding .photoWeddingSlider ul li span.flag {
	display: inline-block;
	width: auto;
	height: auto;
}
.photoWedding .photoWeddingSlider ul li span.flag img {
	width: 22px;
	height: auto;
	vertical-align: bottom;
	margin-left: 5px;
}
.photoWedding .photoWeddingSlider ul li h2.cityName {
	color: #fff;
	font-size: 130%;
	font-weight: normal;
	width: calc(100% - 10px);
	padding: 3px 5px 0px;
	background-color: rgba(24, 25, 25, 0.2);
	position: absolute;
	left: 0;
	bottom: 0;
}
.photoWedding .photoWeddingSlider .flex-direction-nav {
	display: block;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.photoWedding .photoWeddingSlider .flex-direction-nav li {
	width: 100%;
	height: 140px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	position: absolute;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	cursor: pointer;
}
.photoWedding .photoWeddingSlider .flex-direction-nav a {
	width: 42px;
	height: 42px;
}
.photoWedding .photoWeddingSlider .flex-direction-nav .flex-prev {
	left: 0;
	background: rgba(84, 116, 173, 0.5) url("../img/icon/arrow-left.png") no-repeat left;
	background-size: 42px;
}
.photoWedding .photoWeddingSlider .flex-direction-nav .flex-prev:before {
	content: '';
}
.photoWedding .photoWeddingSlider .flex-direction-nav .flex-next {
	right: 0;
	background: rgba(84, 116, 173, 0.5) url("../img/icon/arrow-right.png") no-repeat right;
	background-size: 42px;
}
.photoWedding .photoWeddingSlider .flex-direction-nav .flex-next:before {
	content: '';
}

/*お客様の声*/
.reportModule {
	width: calc(100% - 12px);
	margin: 0 6px 6px;
	height: 140px;
	background-color: #888;
	overflow: hidden;
	position: relative;
}
.reportModule a{
	display: block;
}
.reportModule .reportDate {
	color: #fff;
	width: 50px;
	height:50px;
	background-color: rgba(173, 145, 86, 0.7);
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	box-shadow: rgba(35,24,21,.20) 1px 1px 1px 1px;
	-webkit-box-shadow: rgba(35,24,21,.20) 1px 1px 1px 1px;
	-moz-box-shadow: rgba(35,24,21,.20) 1px 1px 1px 1px;
	position: absolute;
	top: 5px;
	right: 5px;
	z-index: 3;
}
.reportModule .reportDate dl {
	padding-top: 10px;
	width: 50px;
	text-align: center;
	font-size: 86%;
	line-height: 1rem;
}
.reportModule .reportDate dl dt{}
.reportModule .reportDate dl dd{}
.reportModule .bgLayer {
	background-color: rgba(24, 25, 25, 0.2);
	width: calc(100% - 12px);
	padding: 3px 6px 3px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}
.reportModule .bgLayer span.flag {
	display: inline-block;
	width: 15px;
	height: auto;
}
.reportModule .bgLayer span.flag img {
	vertical-align: -1px;
	width: 15px;
	height: auto;
}
.reportModule .bgLayer span.country {
	display: inline-block;
	font-size: 78%;
}
.reportModule .bgLayer span.location {
	display: inline-block;
	font-size: 78%;
}
.reportModule .reportPhoto {
	width: 100%;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.reportText {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.report-area {
	margin-top: 0;
}
.titleContainer {
	display: table;
	width: 100%;
	padding-right: 20px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

section .titleContainer h2.contentTitle{
	display: table-cell;
}

.filterContent {
	display: table-cell;
	margin: 0 6px 15px;
	width: 120px;
}
.filterContent select{
	display: table-cell;
	color: #657392;
	padding: 0 4px;
	font-size: 13px;
	line-height: 30px;
	border: 1px solid #657392;
	width: 120px;
	height: 30px;
	background-color: #fff;
	margin: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.report-area #report .filterCategory,
.report-area .overlay {
	display: none;
}
.reportimagelist {
	display: block;
}
.reportimagelist li {
	width: calc(100% - 12px);
	height: 120px;
	margin: 0 6px 6px;
	background-color: #888;
	overflow: hidden;
	position: relative;
}
.reportimagelist li a{
	display: block;
	height: 120px;
}
.reportimagelist li .reportDate {
	color: #fff;
	width: 50px;
	height:50px;
	background-color: rgba(173, 145, 86, 0.7);
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	box-shadow: rgba(35,24,21,.20) 1px 1px 1px 1px;
	-webkit-box-shadow: rgba(35,24,21,.20) 1px 1px 1px 1px;
	-moz-box-shadow: rgba(35,24,21,.20) 1px 1px 1px 1px;
	position: absolute;
	top: 5px;
	right: 8px;
	z-index: 2;
}
.reportimagelist li .reportDate dl {
	padding-top: 10px;
	width: 50px;
	text-align: center;
	font-size: 86%;
	line-height: 1rem;
}
.reportimagelist li .reportDate dl dt{
}
.reportimagelist li .reportDate dl dd{
}
.reportimagelist li .bgLayer {
	background-color: rgba(24, 25, 25, 0.2);
	width: calc(100% - 12px);
	padding: 3px 6px 3px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
}
.reportimagelist li span.flag {
	display: inline-block;
	width: 15px;
	height: auto;
}
.reportimagelist li span.flag img {
	vertical-align: -1px;
	width: 15px;
	height: auto;
}
.reportimagelist li span.country {
	display: inline-block;
	font-size: 78%;
}
.reportimagelist li span.location {
	display: inline-block;
	font-size: 78%;
}
.reportimagelist li .reportPhoto {
	width: 100%;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.reportlist {
	display: block;
}
.reportlist li {
	display: block;
	width: calc(100% - 12px);
	margin: 0 6px 6px;
	background: #fff;
	border: 1px solid #d9d9d9;
	position: relative;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.reportlist li a {
	color: #333;
	display: table;
	width: 100%;
	cursor: pointer;
}
.reportlist li .styleTitle {
	display: table-cell;
	vertical-align: middle;
	width: 100%;
	padding: 6px;
}
.reportlist li .styleTitle p {
	display: block;
	padding: 0;
	margin: 0;
}
.reportlist li .styleTitle span.flag {
	display: inline-block;
	width: 15px;
	height: auto;
}
.reportlist li .styleTitle span.flag img {
	vertical-align: -1px;
	width: 15px;
	height: auto;
}
.reportlist li .styleTitle span.country {
	font-size: 78%;
	display: inline-block;
}
.reportlist li .styleTitle span.location {
	font-size: 78%;
	display: inline-block;
}
.reportlist li .styleTitle span.date {
	color: #979797;
	font-size: 85%;
	display: block;
}
.reportlist li .fa-angle-right {
	font-size: 170%;
	color: #657392;
	vertical-align: middle;
	display: table-cell;
	width: 15px;
	padding-right: 10px;
}
.report-area .moreBtn {
	margin-top: 0;
	margin-bottom: 10px;
}
.report-area .year {
	border-top: 1px solid #cbdada;
	margin:20px 6px 0;
	text-align:center;
	padding:0;
	height:20px;
}
.report-area .year span{
	color: #657392;
	position: relative;
	top: -10px;
	padding: 0 20px;
	background:white;
}

/* !詳細  ---------------------------------------------------------------- */
.report-detail {
	margin-top: 0;
	min-height: inherit;
	box-sizing: border-box;
}
.detail_title {
	display: block;
	padding: 0 6px 10px;
	margin: 0;
}
.detail_title h1{
	font-size: 115%;
	font-weight: normal;
	padding: 0;
	margin: 0 0 2px;
}
.detail_title span.flag {
	display: inline-block;
	width: 15px;
	height: auto;
	vertical-align: -1px;
}
.detail_title span.flag img {
	width: 15px;
	height: auto;
}
.detail_title span.country {
	font-size: 78%;
	display: inline-block;
}
.detail_title span.location {
	font-size: 78%;
	display: inline-block;
}
.detail_title span.category-news {
	color: #fff;
	font-size: 78%;
	line-height: 78%;
	text-align: center;
	display: inline-block;
	min-width: 64px;
	padding: 5px 0 4px;
	margin-right: 8px;
	background-color: #b19148;
}
.detail_title span.category-media {
	color: #fff;
	font-size: 78%;
	line-height: 78%;
	text-align: center;
	display: inline-block;
	min-width: 64px;
	padding: 5px 0 4px;
	margin-right: 8px;
	background-color: #72727e;
}
.detail_title span.category-column {
	color: #fff;
	font-size: 78%;
	line-height: 78%;
	text-align: center;
	display: inline-block;
	min-width: 64px;
	padding: 5px 0 3px;
	margin-right: 3px;
	background-color: #8ac43f;
}
.detail_title span.post-date {
	font-size: 78%;
	display: inline-block;
	color: #888;
}
.detail_title .writer{
	font-size: 90%;
	font-weight: normal;
	padding: 2px 0 0;
	margin: 0;
}
.detail_title .spell{
	font-size: 90%;
	font-weight: normal;
	padding: 2px 0 0;
	margin: 0;
}
.detail_photo {
	width: calc(100% - 12px);
	height: 240px;
	margin: 0 6px 15px;
	position: relative;
	overflow: hidden;
}
.detail_photo ul li {
	height: 240px;
	padding: 2px 2% 0;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.detail_photo .flex-direction-nav {
	display: block;
}
.detail_photo .flex-direction-nav a {
	width: 42px;
	height: 42px;
}
.detail_photo .flex-direction-nav .flex-prev {
	left: 0;
	background: rgba(84, 116, 173, 0.5) url("../img/icon/arrow-left.png") no-repeat left;
	background-size: 42px;
}
.detail_photo .flex-direction-nav .flex-prev:before {
	content: '';
}
.detail_photo .flex-direction-nav .flex-next {
	right: 0;
	background: rgba(84, 116, 173, 0.5) url("../img/icon/arrow-right.png") no-repeat right;
	background-size: 42px;
}
.detail_photo .flex-direction-nav .flex-next:before {
	content: '';
}
.detail_image ul {
	font-size: 0;
	display: block;
	width: calc(100% - 6px);
	margin: 0 3px 6px;
}
.detail_image ul li{
	font-size: 100%;
	display: inline-block;
	width: calc(100% - 6px);
	margin: 0 3px 6px;
}
.detail_image ul li img {
	vertical-align: bottom;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	overflow: hidden;
}
.detail_message {
	display: block;
	width: calc(100% - 10px);
	margin: 0 5px;
}
.detail_message p{
	display: block;
	padding: 0 0 10px;
}
.detail_message p a {
	color: #657392;
	text-decoration: underline
}
.detail_message img {
	max-width: 310px;
	height: auto;
}
.detail_info {
	display: block;
	width: calc(100% - 32px);
	padding: 12px 10px;
	margin: 0 6px 10px;
	background-color: #dde5ee;
}
.detail_info dl{
	color: #657392;
	padding: 12px 0 0;
	margin: 8px 0 0;
	border-top: 1px solid #657392;
}
.detail_info dl:first-child{
	border-top: none;
	padding-top: 0;
	margin-top: 0;
}
.detail_info dl dt{
	font-size: 90%;
	padding: 0;
	margin: 0;
}
.detail_info dl dd{
	font-size: 78%;
	padding: 0;
	margin: 0;
}
.detail_info dl dd p{
	padding: 0;
	margin: 0;
}
.detail_info dl dd span{
	padding: 0;
	margin: 0;
}
.detail_info dl dd ul.officer {
	margin-left: 53px;
	list-style: none;
}

/* !ニュース --------------------------------------------------- */
.news-area {
	margin-top: 0;
}
.newsList {
	width: calc(100% - 12px);
	margin: 0 6px;
}
.newsList ul {
	padding-bottom: 10px;
	border-bottom: 1px solid #cbdada;
}
.newsList ul li {
	padding-top: 10px;
	margin-top: 10px;
	border-top: 1px solid #cbdada;
	list-style: none;
}
.newsList ul li:first-child {
	margin-top: 0;
}
.newsList ul li a {
	color: #333;
	display: block;
}
.newsList ul li a span {
	color: #979797;
	font-size: 85%;
	display: inline-block
}
.newsList ul li a span.new {
	color: #fff;
	font-size: 78%;
	line-height: 78%;
	text-align: center;
	vertical-align: 1px;
	min-width: 64px;
	padding: 5px 0 4px;
	margin-right: 8px;
	background-color: #e40708;
}

/* !ニュース詳細 --------------------------------------------------- */
.news-detail {
	margin-top: 0;
}

/*その他*/
#extraContents {
	width: calc(100% - 12px);
	margin: 0 6px;
}
#extraContents a {
	display: block;
	cursor: pointer;
	padding: 35px 0 10px;
}
.columnBtn {
	margin-bottom: 6px;
	background-image: url("../img/page_top/img_column.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.columnBtn .columnTitle {
	line-height: 40px;
	background: rgba(138,196,63,0.5);
	background-image: url("../img/icon/icn_column.png");
	background-repeat: no-repeat;
	background-size: 30px 30px;
	background-position: 2% center;
}
.faqBtn {
	margin-bottom: 5px;
	background-image: url("../img/page_top/img_faq.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.faqBtn .faqTitle {
	line-height: 40px;
	background: rgba(120,186,209,0.5);
	background-image: url("../img/icon/icn_faq.png");
	background-repeat: no-repeat;
	background-size: 30px 30px;
	background-position: 2% center;
}
.dressBtn {
	background-image: url("../img/page_top/img_dress.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
}
.dressBtn .dressTitle {
	line-height: 40px;
	background: rgba(249,174,59,0.5);
	background-image: url("../img/icon/icn_dress.png");
	background-repeat: no-repeat;
	background-size: 30px 30px;
	background-position: 2% center;
}

/*fb, instagram*/
.feedContent {
	width: calc(100% - 12px);
	height: 298px;
	margin: 0 6px;
	overflow: hidden;
	border: 1px solid #ececec;
}

/*アクセス*/
.access .accessDetail {
	padding: 0 0 8px;
	background-image: url("../img/page_top/bg_access.png");
	background-repeat: no-repeat;
	background-size: auto 100%;
	background-position: right bottom;
	margin-bottom: 15px;
}
.access .accessDetail p {
	width: calc(100% - 24px);
	padding: 0 12px;
	line-height: 24px;
}
.access iframe {
	width:  calc(100% - 12px);
	height: 250px;
	margin: 0 6px;
}

/* !ウェディングコラム ------------------------------------- */
.weddingcolumn-area {
	margin-top: 0;
	min-height: inherit;
	box-sizing: border-box;
}
.columnlist {
	display: block;
}
.columnlist li {
	display: block;
	width: calc(100% - 12px);
	margin: 0 6px 6px;
	border-bottom: 1px solid #d9d9d9;
	padding-bottom: 5px;
	position: relative;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.columnlist li:first-child{
	border-top: 1px solid #d9d9d9;
	padding-top: 5px;
}
.columnlist li a {
	color: #333;
	display: table;
	width: 100%;
	cursor: pointer;
}
.columnlist li .columnThumb {
	display: block;
	width: 80px;
	height: 80px;
	overflow: hidden;
}
.columnlist li .columnThumb img {
	vertical-align: middle;
}
.columnlist li .columnThumb.widthimg img  {
	width: auto;
	height: 100%;
}
.columnlist li .columnThumb.heightimg img  {
	width: 100%;
	height: auto;
}
.columnlist li .columnTitle {
	vertical-align: middle;
	display: table-cell;
	width: 100%;
	padding: 0 10px;
}
.columnlist li .columnTitle p{
	display: block;
	padding: 0;
	margin: 0;
}
.columnlist li .columnTitle span.date {
	color: #979797;
	font-size: 85%;
	line-height: 85%;
	display: block;
	margin-top: 5px;
}
.columnlist li .fa-angle-right {
	color: #657392;
	font-size: 170%;
	vertical-align: middle;
	display: table-cell;
	width: 15px;
	padding-right: 10px;
}

/* !ウェディングコラム詳細---------------------------- */
.weddingcolumn-detail {
	margin-top: 0;
}
/* !FAQ　よくある質問 --------------- */
.faq-area {
	margin-top: 0;
}
.faq-area .acMenu {
	display:block;
	width: calc(100% - 12px);
	margin: 0 6px;
}
.faq-area .acMenu:last-child{
	border-bottom: 1px solid #cbdada;
}
.faq-area .acMenu dt{
	display: table;
	width: 100%;
	border-top: 1px solid #cbdada;
	cursor: pointer;
}
.faq-area .acMenu dt span.question {
	vertical-align: middle;
	display: table-cell;
	padding: 13px 10px 10px 0;
}
.faq-area .acMenu dt span.number {
	color: #343c78;
	vertical-align: top;
	display: table-cell;
	width: 38px;
	padding: 12px 0 0 5px;
}
.faq-area .acMenu dt span.fa-angle-down {
	color: #657392;
	font-size: 170%;
	text-align: right;
	vertical-align: middle;
	display: table-cell;
	width: 15px;
	padding-right: 10px;
}
.faq-area .acMenu dd.answer{
	background-image: url("../img/icon/icn_answer.png");
	background-repeat: no-repeat;
	background-size: 20px auto;
	background-position: 12px top;
	display: none;
	padding: 0 0 7px 43px;
}
.faq-area .acMenu dd.answer p {
	color: #657392;
	padding-bottom: 5px;
}

/* !国別 ------------------------------------- */
section.locationWedding-detail #location {
	margin-top: 0;
	padding-top: 0;
	background-position: 5px 0px;
}
.locationWedding-area {
	margin-top: 0;
}
.locationWeddingList {
	margin-top: 0;
	background-color: transparent;
}
.locationWeddingModule {
	display: block;
	width: calc(100% - 16px);
	height: auto;
	padding: 8px;
	margin: 0 8px 8px;
	background-color: #fff;
	position: relative;
	box-shadow: 1px 1px 3px -2px #a1a1a1;
	-webkit-box-shadow: 1px 1px 3px -2px #a1a1a1;
	-moz-box-shadow: 1px 1px 3px -2px #a1a1a1;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.locationWeddingModule:last-child {
	margin-bottom: 0;
}
.locationWeddingModule a {
	display: block;
}
.locationWeddingModule .photoContainer{
	width: 149px;
	max-height: 100px;
	overflow: hidden;
}
.locationWeddingModule .photoContainer img{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
.locationWeddingModule .infoContainer{
	position: absolute;
	top: 10px;
	left: 163px;
	line-height: 1.2rem;
}
.locationWeddingModule .infoContainer p{
	color: #1a1a1a;
	font-size: 110%;
	padding-right: 1px;
}
.locationWeddingModule .infoContainer span.flag {
	display: inline-block;
	width: 15px;
	height: auto;
	vertical-align: -1px;
}
.locationWeddingModule .infoContainer span.flag img {
	width: 15px;
	height: auto;
}
.locationWeddingModule .infoContainer span.country {
	color: #333;
	display: inline-block;
	font-size: 78%;
}
.locationWeddingModule .infoContainer span.location {
	color: #333;
	display: inline-block;
	font-size: 78%;
}

/* !国別詳細 ------------------------------------- */
.locationWedding-detail {
	margin-top: 0;
}

/* !フォトウェディング---------------------------- */
.photowedding-area {
	margin-top: 0;
}
.photoWeddingList {
	margin-top: 0;
	background-color: transparent;
}
.photoWeddingModule {
	display: block;
	width: calc(100% - 20px);
	height: auto;
	padding: 10px;
	margin: 0 10px 10px;
	background-color: #fff;
	box-shadow: 1px 1px 3px -2px #a1a1a1;
	-webkit-box-shadow: 1px 1px 3px -2px #a1a1a1;
	-moz-box-shadow: 1px 1px 3px -2px #a1a1a1;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.photoWeddingModule:last-child {
	margin-bottom: 0;
}
.photoWeddingModule a{
	display: block;
}
.photoWeddingModule .photoContainer{
	position: relative;
	margin-bottom: 10px;
}
.photoWeddingModule .photoContainer img.photo {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
.photoWeddingModule .photoContainer span.flag {
	width: auto;
	height: auto;
	position: absolute;
	left: 5px;
	top: 5px;
}
.photoWeddingModule .photoContainer span.flag img {
	width: 22px;
}
.photoWeddingModule .photoContainer span.flagName {
	font-size: 150%;
	position: absolute;
	left: 5px;
	bottom: 0;
}
.photoWeddingModule p.photoText {
	color: #333;
	font-size: 85%;
}

/* !フォトウェディング詳細---------------------------- */
.photowedding-detail {
	margin-top: 0;
}
.photowedding-detail .photo {
	display: block;
	width: calc(100% - 6px);
	margin: 0 3px;
}
.photowedding-detail .photo ul {
	font-size: 0;
	display: block;
	width: 100%;
}
.photowedding-detail .photo ul li{
	font-size: 100%;
	display: inline-block;
	margin: 0 3px 6px;
}
.photowedding-detail .photo ul li.photoDouble{
	width: calc(50% - 6px);
}
.photowedding-detail .photo ul li.photoSingle{
	width: calc(100% - 6px);
}
.photowedding-detail .photo ul li img {
	vertical-align: bottom;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	overflow: hidden;
}
/* !dress---------------------------- */
.dressshop_list {
	margin-top: 0;
}
.dress_top {
	margin: 15px auto 10px;
	position: relative;
	color: #515151;
}
.dress_top img {
	width: 100%;
}
.dress_top .dress_image {
	line-height: 0;
}
.dress_top .topimage_txtbox {
	width: 65%;
	max-width: 300px;
	position: absolute;
	top: 10%;
	left: 20px;
}
.dress_top .special_package_lead{
	width: 100%;
	background-color: #2f3782;
	color: #fff;
	font-size: 12px;
	padding: 15px 10px;
	text-align: center;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.dress_top .special_package_lead img {
	width: 60%;
	max-width: 250px;
}
.dressshop_list dl.shop_list {
	margin: 10px auto;
}
.dressshop_list dl.shop_list dt,
.dressshop_list dl.shop_list dd {
	margin: 0 auto;
	width: 80%;
	line-height: 1.7rem;
}
.dressshop_list dl.shop_list dt {
	color: #9babaf;
}
.dressshop_list dl.shop_list dd i {
	padding-right: 5px;
}
.dressshop_list dl.shop_list dd a {
	display: block;
	margin: 0 5px;
	cursor: pointer;
}
.single_shop {
	display: block;
	padding: 20px;
	background-color: #f2f7f7;
	margin-bottom: 20px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.dress_title {
	width: calc(100% - 12px);
	margin: 0 6px;
	display: block;
	padding: 0 6px 10px;
	text-align: center;
}
.dress_title h1{
	font-size: 170%;
	font-weight: normal;
	padding: 0;
	margin: 0;
	line-height: 28px;
	color: #2d3b72;
}
.dress_title p {
	color: #9babaf;
	font-size: 12px;
}
.dress_photo {
/*	max-height: 500px;*/
	margin: 0 0 5px;
	position: relative;
/*	overflow: hidden;*/
}
.dress_photo img{
	object-fit: contain;
	width: 100%;
	max-height: 350px;
}
.dress_message {
	display: block;
	color: #515151;
	line-height: 1.5rem;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.dress_message p.special_package{
	color: #2D3B72;
	font-size: 12px;
	text-align: center;
	font-weight: bold;
	padding-top: 20px;
	z-index:1;
	position: relative;
}
.dress_info {
	position: relative;
	display: block;
	padding: 15px;
	margin: 5px 0;
	color: #fff;
	background-color: rgba(67,77,130,0.8);
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
	.bg_special {
		position: absolute;
		top: -37px;
		left: -22px;
		width: 100px;
		z-index: 0;
	}
	.bg_special img {
		width: 100%;
	}
.dress_info h3{
	z-index:1;
	position: relative;
}
.dress_info ul.package_condition{
	padding: 12px 0 0;
	margin: 8px 0 0;
	border-top: 1px solid rgba(253,248,231,0.5);
}
.dress_info ul.package_condition li{
	font-size: 85%;
	list-style: none;
}
.dress_info ul.package_detail{
	list-style-type: disc;
	padding-top: 8px;
	padding-left: 1rem;
	margin: 8px 0 0;
	border-top: 1px solid rgba(253,248,231,0.5);
}
.dress_info ul.package_detail li{
	font-size: 85%;
}
.dress_detail p.dress_annotation{
	color: #434D82;
	font-size: 10px;
	padding: 0 1rem;
}
.shop_detail {
	display: table;
	width: 100%;
	margin: 15px 0 5px;
	padding-top: 15px;
	border-top: 1px dotted #9bacb0;
}
.shop_detail table{
	float: left;
	width: 210px;
	margin: 0;
	font-size: 84%;
	line-height: 20px;
	border-collapse: collapse;
}
.shop_detail table th {
	text-align: right;
	font-weight: normal;
	padding-right: 10px;
	width: 52px;
	border-right: 1px solid #cacaca;
}
.shop_detail table td {
	text-align: left;
	padding-left: 10px;
	border: 0;
}
.shop_detail .shop_btn_area {
	float: right;
	text-align: center;
	min-width: 77px;
	margin-right: 0;
}
.shop_detail .shop_btn_area a {
	display: block;
	background: rgba(255,255,255,0.5);
	cursor: pointer;
	padding: 0 15px;
}
.shop_detail .shop_btn_area a:hover,
.shop_detail .shop_btn_area a:active{
	background: rgba(67,77,130,0.5);
	color: #fff;
}
.shop_detail .shop_btn_area .shop_btn {
	line-height: 25px;
	border: 1px solid #657392;
	font-size: 84%;
	margin: 4px 0;
}
.add_height {
	margin-top: -55px;
	padding-top: 55px;
}

/* !お問い合わせ---------------------------- */
.contact-area {
	margin-top: 0;
}
.subTitle-box {
	color: #343c78;
	display: block;
	width: calc(100% - 32px);
	padding: 0 10px;
	margin: 0 6px 10px;
	background-color: #dde5ee;
	text-align: center;
}
.subTitle-box .subTitle {
	font-size: 85%;
	width: calc(100% - 12px);
	margin: 0 6px;
	line-height: 40px;
}
.subTitle-box .subTitle a {
	color: #343c78;
	display: inline-block;
}
.subTitle-phone {
	background: url(../img/icon/icn_phone.png) no-repeat;
	background-position: center left;
	background-size: 20px 20px;
	height: 40px;
	padding-left: 22px;
	margin-left: 5px;
	font-weight: bold;
	display: inline-block;
}
.form-area {
	padding-top: 10px;
}
.formcontent {
	padding: 10px 0 0px;
	margin: 0 6px 10px;
	border-top: 1px solid #cbdada;
}
.formcontent .message {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
}
.formcontent p {
	font-size: 13px;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
}
.formcontent label{
	font-size: 100%;
	display: block;
	padding: 5px;
	margin: 0;
}
.formcontent label .required{
	color: #657392;
	font-size: 10px;
	line-height: 16px;
	vertical-align: 1px;
	display: inline-block;
	height: 16px;
	padding: 0 3px 0 2px;
	margin: 0 0 0 8px;
	border: 1px solid #657392;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.error {
	font-size: 12px;
	padding: 0 6px;
	background: #fceeee;
}
.formcontent input[type="text"],
.formcontent input[type="number"],
.formcontent input[type="tel"],
.formcontent input[type="month"],
.formcontent input[type="date"]{
	font-size: 13px;
	line-height: 28px;
	display: inline-block;
	width: 100%;
	height: 28px;
	padding: 4px 5px 0;
	margin: 0;
	background: #fff;
	border: 1px solid #d9d9d9;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.formcontent textarea{
	font-size: 13px;
	display: block;
	width: 100%;
	height: 64px;
	padding: 4px 5px 0;
	margin: 0;
	background: #fff;
	border: 1px solid #d9d9d9;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.formcontent select{
	font-size: 13px;
	line-height: 28px;
	display: inline-block;
	width: 100%;
	height: 28px;
	padding: 4px 5px 0;
	margin: 0;
	background: #fff;
	border: 1px solid #d9d9d9;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.formcontent input[type="radio"],
.formcontent input[type="checkbox"] {
	width: 16px;
	height: 16px;
	margin-top: 0;
	display: inline-block;
}
.formcontent .addtext{
	font-size: 13px;
	vertical-align: -1px;
	display: inline-block;
	padding: 0;
	margin: 0 8px;
}
.formcontent input[type="radio"] + .addtext,
.formcontent input[type="checkbox"] + .addtext {
	vertical-align: -4px;
	margin-left: 0;
}
#contactnamesei{
	width: 90px;
	margin-right: 8px;
}
#contactnamemei{
	width: 90px;
}
#contactkanasei{
	width: 90px;
	margin-right: 8px;
}
#contactkanamei{
	width: 90px;
}
#contactage{
	width: 60px;
}
#contactpost01{
	width: 60px;
}
#contactpost02{
	width: 90px;
}
#contactprefecture{
	width: 240px;
}
#contacttel{
	width: 75px;
}
#contactschedule{
	width: 120px;
}
#contacttel01{
	width: 60px;
}
#contacttel02{
	width: 90px;
}
#contacttel03{
	width: 90px;
}
#contacttel{
	width: 75px;
}
#contactbudget{
	width: 75px;
}
#contactpeople{
	width: 75px;
}
#contactvisit1st{
	width: 120px;
	margin-right: 4px;
}
#contactvisit1st + .addtext{
	vertical-align: 3px;
}
#contactvisit2nd{
	width: 120px;
	margin-right: 4px;
}
#contactvisitampm{
	width: 60px;
}
#contactmethod {
	font-size: 0;
	display: block;
	padding: 0;
	margin: 0;
}
#contactmethod li {
	font-size: 100%;
	display: inline-block;
	margin: 7px 0 0;
}
#contactmethod li label{
	padding-bottom: 0;
}
#desiredcountry {
	font-size: 0;
	display: block;
	padding: 0;
	margin: 0;
}
#desiredcountry li {
	font-size: 100%;
	display: inline-block;
	margin: 7px 0 4px;
}
#desiredcountry li label{
	padding-bottom: 0;
}
#othercountries{
	width: 100%;
}
#othercountries ul {
	font-size: 0;
	display: block;
	padding: 0;
	margin: 0;
}
#othercountries ul li {
	font-size: 100%;
	display: inline-block;
	margin: 7px 0 4px;
}
#othercountries ul li label{
	padding-bottom: 0;
}
#othercountries input[type="text"]{
	width: 240px;
	margin-top: 2px;
}
#weddingstyle {
	font-size: 0;
	display: block;
	padding: 0;
	margin: 0;
}
#weddingstyle li {
	font-size: 100%;
	display: inline-block;
	margin: 7px 0 4px;
}
#weddingstyle li label{
	padding-bottom: 0;
}
#companion {
	font-size: 0;
	display: block;
	padding: 0;
	margin: 0;
}
#companion li {
	font-size: 100%;
	display: inline-block;
	margin: 7px 0 0;
}
#companion li label{
	padding-bottom: 0;
}
#companionpeople{
	width: 100%;
	margin-top: 8px;
}
#contactvisit {
	display: block;
	padding: 0;
	margin: 0;
}
#contactvisit li {
	display: block;
	margin: 0;
}
#contactvisit li:first-child {
	margin-bottom: 10px;
}
#knowing {
	font-size: 0;
	display: block;
	padding: 0;
	margin: 0;
}
#knowing li {
	font-size: 100%;
	display: inline-block;
	margin: 7px 0 4px;
}
#knowing li label{
	padding-bottom: 0;
}
#choose-contacttype {
	font-size: 0;
	text-align: center;
	display: block;
	padding: 0;
	margin: 0;
	border-top: 1px solid #657392;
	border-right: 1px solid #657392;
	border-bottom: 1px solid #657392;
}
#choose-contacttype li {
	font-size: 100%;
	display: inline-block;
	width: 33.33%;
	height: 28px;
}
#choose-contacttype li input[type="radio"] {
	display: none;
}
#choose-contacttype li input[type="radio"]:checked + label {
	color: #fff;
	background-color: #657392;
}
#choose-contacttype li label {
	color: #657392;
	font-size: 13px;
	line-height: 28px;
	text-align: center;
	display: block;
	height: 28px;
	padding: 0;
	margin: 0;
	background-color: #fff;
	border-left: 1px solid #657392;
	cursor: pointer;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
/* !legal--------------------------------------------- */
.legal_message {
	width: 90%;
	margin: 0 auto;
	line-height: 24px;
}
.legal_message p {

}
.legal_message ul li {
	list-style: none;
	padding: 5px 0;
	text-indent: -1rem;
	padding-left: 1rem;
}
.legal_message ul.sub-list li{
	padding: 0 0 0 1rem;
	text-indent: -1rem;
}
.additional_info {
	display: block;
	width: 80%;
	padding: 12px 10px;
	margin: 10px auto;
	background-color: #dde5ee;
}
.additional_info p{
	color: #657392;
}
.additional_info a{
	color: #d42b2b;
	text-decoration: underline;
}
/* !about--------------------------------------------- */
.detail_message .about-img{
	width: 50%;
	padding: 0 25%;
}
h1.blue {
	color: #2e3781;
}
.detail_title .sub-titletxt {
	font-size: 90%;
	font-weight: normal;
	padding: 2px 0 0;
	margin: 0;
	color: #657392;
}
table {
	width: 100%;
	margin: 10px 0;
	font-size: 84%;
	border-collapse: collapse;
}
table td {
	border: 1px solid #999;
	text-align: center;
	text-indent: 0 !important;
}
/* !Page-topへ戻る--------------------------------------------- */
#scrollButton {
	position: fixed;
	bottom: 10px;
	right: 10px;
	font-size: 200%;
	z-index: 98;
}
#scrollButton span {
	background: rgba(176, 192, 212, 0.8);
	text-decoration: none;
	color: #fff;
	width: 44px;
	height: 44px;
	text-align: center;
	line-height: 40px;
	display: block;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	/* box-shadow */
	box-shadow: 0.5px 0.5px 2px 1px rgba(39, 35, 60, 0.15);
	-moz-box-shadow: 0.5px 0.5px 2px 1px rgba(39, 35, 60, 0.15);
	-webkit-box-shadow: 0.5px 0.5px 2px 1px rgba(39, 35, 60, 0.15);
	/* border-radius */
	border-radius: 25px;
	-moz-border-radius: 25px;
	-webkit-border-radius: 25px;
}

@media only screen
and (min-device-width:320px)
and (max-device-width:568px) {
	#sliderContents .slider-catchcopy {
		display: block;
		width: 55%;
		padding: 40px 15px;
		margin: 0;
		background-color: rgba(70, 92, 124, 0.6);
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -52%);
		-webkit-transform: translate(-50%, -52%);
		-moz-transform: translate(-50%, -52%);
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
}

/* 768px以上 */
@media (min-width: 768px){
.contents { margin-top: 122px; }
.contents-contact { margin-top: 80px; }
.drawer--right .drawer-hamburger { display: none; }
/* !Header --------------------------------------------- */
.header { height: 80px;}
.header-contact {
	height: 80px;
	background-color: white;
}
	.header .logo {
		width: 225px;
		height: 80px;
		background-color: #fff;
	}
	.header-contact .logo {
		width: 225px;
		height: 80px;
	}
	.header .logo a,
	.header-contact .logo a {
		height: 80px;
	}
		.header .logo img,
		.header-contact .logo img {
			width: auto;
			height: 80px;
			padding: 12px;
			box-sizing: border-box;
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
		}
.header .headerBtnArea-sp {
		display: none;
	}
.header .headerBtnArea-pc {
		display: block;
	}
	.header .headerBtnArea-pc {
		position: fixed;
		top: 15px;
		right: 10px;
		display: block;
	}
		.header .headerBtnArea-pc ul li {
			display: inline-block;
			list-style: none;
			cursor: pointer;
			width: 50px;
			height: 50px;
			box-sizing: border-box;
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
		}
			.header .headerBtnArea-pc ul li a{
				display: block;
				color: #2e3781;
			}
			.headerBtnArea-pc .headerBtn div.appoint ,
			.headerBtnArea-pc .headerBtn div.contact ,
			.headerBtnArea-pc .headerBtn div.email {
				width: auto;
				height: 36px;
			}
			.header .headerBtnArea-pc li div.contactTxt {
				color: #2e3781;
				font-size: 72%;
				text-align: center;
			}

			.header .headerBtnArea-pc ul li.phoneNumber {
				width: 152px;
				height: 50px;
			}
			.headerBtnArea-pc .phoneNumber div.number {
				float: right;
				font-size: 16px;
				margin-top : 5px;
			}
			.headerBtnArea-pc .phoneNumber div.phone {
				width: 44px;
				height: 32px;
			}
 			.header .headerBtnArea-pc li.phoneNumber div.contactTxt {
				width: 44px;
				text-align: center;
			}
				.appoint {
					background: url(../img/icon/icn_appoint.png) no-repeat;
					background-position: center 4px;
					background-size: 28px 28px;
				}
				.contact {
					background-size:  28px 28px;
				}
				.email {
					background: url(../img/icon/icn_email.png) no-repeat;
					background-position: center 4px;
					background-size:  28px 28px;
				}
				.phone {
					background: url(../img/icon/icn_phone.png) no-repeat;
					background-position: 5px 1px;
					background-size:  28px 28px;
				}
/* !navi---------------------------- */
.header nav.gnavi {
	display: block;
	width: 100%;
	height: 42px;
	background-color: rgba(84, 116, 173, 0.8);
}
	.header nav.gnavi ul {
		font-size: 0;
		max-width: 1000px;
		margin: 0 auto;
		text-align: center;
	}
	.header nav.gnavi ul li {
		color: #fff;
		font-size: 13px;
		line-height: 42px;
		display: inline-block;
		margin-right: 5px;
	}
	.header nav.gnavi ul li:last-child {
		padding-right: 0;
	}
	.header nav.gnavi ul li a {
		display: block;
		height: 42px;
		padding: 0 11px 0 26px;
		cursor: pointer;
	}
		.gnavi li.nav-euroWed {
			background: url(../img/nav/nav_wedding.png) no-repeat;
			background-position: left center;
			background-size: 22px auto;
		}
		.gnavi li.nav-photoWed {
			background: url(../img/nav/nav_photo.png) no-repeat;
			background-position: left center;
			background-size: 22px auto;
		}
		.gnavi li.nav-report {
			background: url(../img/nav/nav_report.png) no-repeat;
			background-position: left center;
			background-size: 22px auto;
		}
		.gnavi li.nav-column {
			background: url(../img/nav/nav_column.png) no-repeat;
			background-position: left center;
			background-size: 22px auto;
		}
		.gnavi li.nav-aboutUs {
			background: url(../img/nav/nav_office.png) no-repeat;
			background-position: left center;
			background-size: 22px auto;
		}
		.gnavi li.nav-access {
			background: url(../img/nav/nav_access.png) no-repeat;
			background-position: left center;
			background-size: 22px auto;
		}

/* !breadcrumb -------------------------------------------------------------- */
#breadcrumb {
	max-width: 840px;
	padding: 10px 5px;
	margin: 0 auto;
}
	#breadcrumb ol li{ padding: 0; }

.nav-button {
	display: block;
	padding: 20px 10% 10px;
	margin: 0 6px;
	border-top: 1px solid #cbdada;
	width: calc(80% - 12px);
}
.nav-button li button {
	color: #657392;
	font-size: 13px;
	display: block;
	width: 300px;
	padding: 8px 6px 6px;
	background-color: #fff;
	border: 1px solid #657392;
	margin: 0 auto;
}

/* !slider---------------------------- */
#sliderContents { height: 600px; }
	#sliderContents .slider-catchcopy {
		width: 50%;
		padding: 50px 20px;
		top: 52%;
		left: 50%;
		transform: translate(-50%, -52%);
		max-width: 650px;
	}
	#sliderContents .slider-catchcopy .inner-box {
		position: relative;
	}
	#sliderContents .slider-catchcopy .inner-box .deco-top{
		position: absolute;
		top: -70px;
		left: -48px;
		width: 160px;
	}
	#sliderContents .slider-catchcopy .inner-box .deco-bottom{
		position: absolute;
		bottom: -70px;
		right: -48px;
		width: 160px;
	}
	#sliderContents .slider-catchcopy h1{
		font-size: 18px;
		line-height: 30px;
	}

/* !news---------------------------- */
.latestNews {
	padding: 15px 0 15px 0;
}
.latestNews .newsContainer {
	width: 75%;
	padding: 15px 15px 15px 50px;
	margin: 0 auto;
	background-color: rgba(255, 255, 255, 1);
	background-position: left center;
	outline: 3px solid #d6cab9;
	border: 1px solid #c1a472;
	box-shadow: 0px 1px 2px 2px #4d4d4d;
	-webkit-box-shadow: 0px 1px 2px 2px #4d4d4d;
	-moz-box-shadow: 0px 1px 2px 2px #4d4d4d;
}
.latestNews .newsContainer .imgNews {
	left: -48px;
	width: 100px;
	height: auto;
}
.latestNews .newsContainer dl {
	padding-left: 10px;
}
.latestNews .newsContainer dl dt{
	font-size: 85%;
	color: #979797;
}
.latestNews .newsContainer dl dd{
	color: #333;
}
.latestNews .newsContainer i {
	width: 2%;
}
section {
	padding: 25px 0;
	margin-top: 20px;
}
	section h2.contentTitle {
		padding-left: 40px;
		color: #343c78;
		font-size: 16px;
		font-weight: normal;
		line-height: 30px;
	}

/* タイトルアイコン */
	#location {
		background-size: 30px auto;
		background-position: 5px 120px;
	}
	#photowedding {
		background-size: 30px auto;
		background-position: 5px 120px;
	}
	#report {
		background-size: 30px auto;
		background-position: 5px 120px;
	}
	#access {
		background-size: 30px auto;
		background-position: 5px 120px;
	}
	#facebook {
		background-size: 22px auto;
		background-position: 10px 7px;
	}
	#instagram {
		background-size: 22px auto;
		background-position: 10px 7px;
	}

/* !location---------------------------- */
.top-location {
	position: relative;
}
#location .menuTab {
	position: absolute;
	right: 0;
	bottom: -5px;
}
/* Tab */
.weddingLocation .menuTab {
	width: 300px;
}
	.weddingLocation .menuTab .tabList li {
		font-size: 14px;
		line-height: 6px;
	}
	.weddingLocation .menuTab .tabList .tab01,
	.weddingLocation .menuTab .tabList .tab02 {
		padding: 15px 0;
	}
	.weddingLocation .locationWrapper .locationModule {
		font-size: 16px;
		width: 25%;
		margin: 0;
		padding: 0;
		border: 3px solid #fff;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		position: relative;
	}
	.locationModule span.flag img,
	.locationModule span.flag2 img {
		width: 28px;
	}
	.locationModule h2.countryName {
		font-size: 16px;
	}
		.locationModule h2.countryName  br {
			display: none;
		}
.locationWeddingModule {
	width: calc(50% - 10px);
	margin: 0 5px 10px;
	float: left;
}
.locationWeddingModule .photoContainer{
	height: 100px;

}
.styleWrapper .styleModule .imgArea span.styleTitle {
	width: 610px;
	font-size: 16px;
}
/* font icon */
.styleWrapper .styleModule .imgArea .fa-angle-right {
	font-size: 25px;
	width: 40px;
}
.styleWrapper .styleModule .imgArea span.styleImg {
	display: block;
	width: 130px;
	height: 80px;
}
.styleWrapper .styleModule .imgArea span.styleImg.widthimg img {
	width: 130px;
	height: auto;
}
.detail_info dl dt {
	font-size: 14px;
}
.detail_info dl dd {
	font-size: 13px;
}
/* seasrch */
.searchBox {
	position: relative;
}
	.searchBox img.search_bg_top {
		position: absolute;
		width: 180px;
		top: -60px;
		left: 10px;
		opacity: 0.7;
		display: block;
		z-index: 1;
	}
	.searchBox img.search_bg_bottom {
		position: absolute;
		width: 180px;
		bottom: -65px;
		right: 20px;
		opacity: 0.7;
		display: block;
		z-index: 1;
	}

dl.search1 {
	width: 500px;
	margin: 70px auto 60px;
	z-index: 2;
}
	dl.search1 dt {
		width: 80%;
	}
	dl.search1 dt input {
		line-height: 35px;
		height: 35px;
	}
	dl.search1 dd button {
		height: 35px;
	}
	dl.search1 dd {
		width: 20%;
	}
/*お客様の声*/
.filterContent {
	display: none;
}
/*.report-area #report{
	position: relative;
}*/
.titleContainer {
	position: relative;
}
.report-area #report .filterCategory {
	font-size: 13px;
	display: table-cell;
	background-color: #fff;
	border: 1px solid #657392;
	color: #657392;
	cursor: pointer;
	width: 110px;
	height: 26px;
	text-align: center;
}
	.report-area #report .filterCategory:active {
		background: rgba(101, 115, 146, 0.5);
		color: #fff;
	}
.report-area .overlay {
	display: none;
}
.report-area .overlay.on {
	position: absolute;
	display: block;
	top: 37px;
	right: 0px;
	z-index: 100;
	box-shadow:1px 1px 4px -1px rgba(30,30,30,0.30);
	-moz-box-shadow:1px 1px 4px -1px rgba(30,30,30,0.30);
	-webkit-box-shadow:1px 1px 4px -1px rgba(30,30,30,0.30);
}
.report-area .balloon {
	position: relative;
	display: table;
	color: #657392;
	font-size: 13px;
}
	.report-area .balloon:after {
		border-bottom: 12px solid #eef2f8;
		border-right: 12px solid transparent;
		border-left: 12px solid transparent;
		content: '';
		margin-left: -10px;
		position: absolute;
		top: -12px;
		right: 30px;
	}
.report-area .balloon .close {
	position: absolute;
	cursor: pointer;
	top: 0px;
	right: -35px;
	font-size: 30px;
	text-align: center;
	line-height: 35px;
	width: 35px;
	height: 35px;
	color: #eef2f8;
	background: rgba(101, 115, 146, 0.5);
	box-shadow:1px 1px 4px -1px rgba(30,30,30,0.30);
	-moz-box-shadow:1px 1px 4px -1px rgba(30,30,30,0.30);
	-webkit-box-shadow:1px 1px 4px -1px rgba(30,30,30,0.30);
}
.report-area .balloon .filterTitle{
	height: 35px;
	background: #eef2f8;
	line-height: 35px;
	color: #768fbd;
}
	.report-area .balloon .filterTitle .fromCountry {
		width: 260px;
		text-align: center;
		display: inline-block;
	}
	.report-area .balloon .filterTitle .fromStyle {
		width: 118px;
		text-align: center;
		display: inline-block;
	}
.report-area .balloon .listContainer{
	background: #fff;
	display: block;
	margin: 0;
	padding: 10px 0;
	height: 180px;
}
.report-area .balloon ul.filterList-pc{
	line-height: 2em;
	display: table-cell;
	width: 110px;
	padding: 0 10px;
	float: left;
	list-style: none;
	border-right: 2px solid #eef2f8;
}
	.report-area .balloon ul.filterList-pc:last-child{
		border-right: 0
	}
	.report-area .balloon ul.filterList-pc li {
		list-style: none;
		width: 110px;
		padding: 0 10px;
		cursor: pointer;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
		.report-area .balloon ul.filterList-pc li a{
			display: block;
		}
		.report-area .balloon ul.filterList-pc li:hover {
			background: rgba(101, 115, 146, 0.25);
		}
.reportModule {
	margin: 0 3px 6px;
	display: inline-block;
	float: left;
	width: calc(33.33% - 6px);
}
.reportimagelist li {
	width: 80%;
	height: 300px;
	margin: 0 auto 6px;
	background-color: #888;
	overflow: hidden;
	position: relative;
}
.reportlist li {
	width: 80%;
	margin: 0 auto 6px;
}
.moreBtn {
	text-align: right;
	clear: left;
}
/* font icon */
.moreBtn .fa-angle-right {
	padding-left: 8px;
}

.detail_photo {
	width: calc(80% - 12px);
	height: 440px;
	margin: 0 auto 20px;
	position: relative;
}
.detail_photo ul li {
	height: 440px;
	padding: 0;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.detail_info {
	width: calc(80% - 32px);
	padding: 12px 10px;
	margin: 20px auto;
}
/*photowedding*/
.photoWeddingModule {
	width: 80%;
	padding: 15px;
	margin : 0 auto 15px;
}
.photoWeddingModule .photoContainer span.flagName {
	font-size: 22px;
}
.detail_title span.flag img {
	width: 20px;
}
.detail_title span.country {
	font-size: 13px;
	padding-left: 5px;
}
.detail_title span.location {
	font-size: 13px;
}
.photowedding-detail .photo {
	width: 80%;
	margin: 0 auto 30px;
}

/*fb, instagram*/
.feed {
	height: 350px;
}
.feedbackContainer {
	margin: 0 3px 6px;
	display: inline-block;
	float: left;
	width: calc(50% - 6px);
}
	.feedContent {
		margin: 0 auto;
		height: 298px;
		overflow: hidden;
	}
	.instagramLogo {
		width: 150px;
		height: auto;
		padding: 0 3%;
	}
/* !extra---------------------------- */
section.extra {
	height: 90px;
}
#extraContents {
	margin-top:-120px;
	padding-top:120px;
}
.columnBtn,
.faqBtn,
.dressBtn{
	margin: 0 3px 6px;
	display: inline-block;
	float: left;
	width: calc(33.33% - 6px);
}
.columnBtn .columnTitle,
.faqBtn .faqTitle,
.dressBtn .dressTitle {
	line-height: 44px;
	background-size: 30px 30px;
}
.detail_image ul li img {
	max-width: 600px;
	margin: 0 auto;
}
.detail_message {
	width: 80%;
	margin: 0 auto;
}
.detail_message img {
	max-width: 600px;
	height: auto;
}
/* !access---------------------------- */
section.access .accessDetail {
	background-size: 55%;
	background-position: right bottom;
	padding: 10px 10px 20px;
	width: 48%;
	float: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
	section.access .accessDetail p {
		padding: 0 20px;
		line-height: 24px;
	}
	section.access iframe {
		width: 50%;
		height: 240px;
		margin: 0;
		padding-left: 10px;
		box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	#footer .sitemapContainer {
		width: 90%;
		margin: 0 auto;
	}
	#footer ul.sitemap {
		font-size: 12px;
	}
	.columnlist li .columnThumb {
		width: 140px;
	}
.subTitle-box .subTitle {
	font-size: 16px;
}
/* !Page-topへ戻る--------------------------------------------- */
#scrollButton {
	bottom: 30px;
	right: 30px;
}
/* !dress---------------------------- */
.dress_top {
	position: relative;
}
.dress_top .topimage_txtbox {
	width: 35%;
	top: 50px;
	left: 50px;
}
.dress_top .special_package_lead{
	width: 320px;
	bottom: 85px;
	position: absolute;
	left: 30px;
	padding: 10px;
	background-color: rgba(67,77,130,0.8);
}
.dress_top .special_package_lead img {
	width: 65%;
}
.dressshop_list dl.shop_list{
	margin: 15px auto 25px;
	text-align: center;
	font-size: 16px;
}
.dressshop_list dl.shop_list dd{
	display: inline-block;
	width: auto;
	line-height: 30px;
	height: 30px;
	margin-right: 15px;
}
	.dressshop_list dl.shop_list dd:last-child {
		margin-right: 0;
	}
	.dressshop_list dl.shop_list dd a {
		border-bottom: 2px solid rgba(67,77,130,0.25);
		padding: 0 5px;
		transition: all 200ms 50ms ease;
	}
	.dressshop_list dl.shop_list dd a:hover {
		border-bottom: 5px solid rgba(67,77,130,0.5);
}
.dress_photo {
	width: calc(50% - 12px);
	margin-left: 12px;
	float: right;
}
.dress_photo img{
	max-height: 450px;
}
.dress_message {
	float: left;
}
.dress_info {
	float: left;
	width: calc(100% - 20px);
	padding: 15px;
	margin: 5px 10px;
}
.dress_detail {
	float: left;
	width: 50%;
}
.shop_detail {
	width: calc(50% - 50px);
	border-top: 0;
	margin: 0 25px;
	padding-top: 0;
	float: right;
}
.add_height {
	margin-top: -130px;
	padding-top: 130px;
}
}

.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
	width: 100%;
	z-index: 1000;
}
.modal__bg{
    background: rgba(0,0,0,0.5);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.modal__content{
    background: #fff;
    left: 50%;
    padding: 20px;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
	width: 70%;
	max-width: 600px;
}
.modal__content p a {
	text-decoration: underline;
}
.modal__content b {
	color: red;
}
.js-modal-close button {
	display: block;
	margin: 20px 0 0 auto;
}
.sp_br {
	display: none;
}
@media screen and (max-width: 768px) {
	.pc_br {
		display: none;
	}
	.sp_br {
		display: unset;
	}
}