.sp-island_menu{
	display: none;
}

@media screen and (max-width: 768px){

body {
	-webkit-text-size-adjust: 100%;
	background: #efefef;
}

header {
	display: block;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
}
header .headtop {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	padding: 8px 8px;
}
header .menubtn {
	height: 26px;
}
header .menubtn img {
	width: 44px;
	height: auto;
}
header h1 {
	line-height: 0;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	padding:0;
	padding-right: 12px;
}
header h1 img {
	height: 34px;
	width: auto;
}
#sidelogo {
	line-height: 0;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	padding-right: 12px;
}
#sidelogo img {
	height: 34px;
	width: auto;
}
header .search {
	background: #0b599d;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	padding: 0 7px;
}
header .search img {
	width: 20px;
	height: 20px;
}
header .headctc {
	height: 30px;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	background: #d6d6d6;
}
header .rsrv {
	height: 30px;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
}
header .rsrv dl {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	height: 30px;
	width: 50%;
}
header .rsrv dt {
	position: relative;
	background: #5da0d8;
	color: #fff;
	font-size: 1.3rem;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	padding: 0 9px;
}
header .rsrv dt:after {
	left: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(34, 131, 216, 0);
	border-left-color: #5da0d8;
	border-width: 4px;
	margin-top: -4px;
}
header .rsrv dd {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	font-size: 1.4rem;
	font-weight: bold;
	padding: 0 8px 0 10px;
	color: #333;
}
header .rsrv dd:last-child {
	font-size: 1.3rem;
}
header .rsrv dd a {
	color: #111;
}
header .rsrv dd i {
	margin-right: 3px;
}


.pagetop {
	z-index: 200;
}
.pagetop img {
	width: 50px;
	height: 50px;
}

.spnav {
	position: fixed;
	left: 0;
	top: 80px;
	width: 100%;
	background: #fff;
	z-index: 10000;
	border-bottom: 2px solid #ccc;
overflow-y:auto;
-webkit-overflow-scrolling:touch;
height:350px;
}

.spnav ul{
overflow-y:auto;
-webkit-overflow-scrolling:touch;
height:auto;
}

.spnav.sidefoot{
overflow-y:auto;
-webkit-overflow-scrolling:touch;
height:300px;
}

.wrap {
	display: block;
	padding-top: 80px;
}
.side {
	display: none;
}
.spnav .menu {
	padding-top: 5px;
}
.spnav .menu li {
	font-family: 'Open Sans', sans-serif;
	font-size: 1.7rem;
	line-height: 1.4rem;
	text-align: left;
}
.spnav .menu li span {
	font-size: 1.0rem;
	margin-left: 3px;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}
.spnav .menu li a {
	display: block;
	color: #222;
	text-decoration: none;
	padding: 7px 10px;
}
.spnav .menu li a:hover,
.spnav .menu li a:active {
	color: #2283d8;
}
.spnav .menu li.hotels {
	border-top: 1px dotted #cbcbcb;
	border-bottom: 1px dotted #cbcbcb;
	margin-top: 5px;
}
.spnav .menu li.hotels .fa-circle-o:before {
	color: #ac99cc;
}
.spnav .menu li.wedding {
	border-bottom: 1px dotted #cbcbcb;
}
.spnav .menu li.wedding .fa-circle-o:before {
	color: #f0a0c6;
}
.spnav .menu li.diving {
}
.spnav .menu li.diving .fa-circle-o:before {
	color: #a8ded4;
}
.spnav .menu li.hotels span,
.spnav .menu li.wedding span,
.spnav .menu li.diving span {
	margin-left: 10px;
}
.spnav .sidefoot {
	width: 100%;
}
.spnav .sidefoot ul {
	border-top: 1px solid #cbcbcb;
	padding: 5px 0 10px 0;
}
.spnav .sidefoot li {
	font-size: 1.3rem;
	padding: 1px 10px;
	text-align: left;
}
.spnav .sidefoot li.ctc {
	padding-left: 10px;
}
.spnav .sidefoot li.ctc a {
	background: url(/images/icon-arrctc.png) left center no-repeat;
	background-size: 13px 13px;
	padding-left: 16px;
}
.spnav .sidefoot li.ctc.blue a {
	background: url(/images/icon-arrctc_b.png) left center no-repeat;
	background-size: 13px 13px;
	padding-left: 16px;
}
.spnav .sidefoot li a {
	color: #222;
}
.spnav .sidefoot li i {
	margin-right: 4px;
}

.head {
	display: none;
}
.head .srch, .head .times {
	display: none;
}
.sns {
	display: none;
}

.contents .islandtop > h2,
.contents .weddingtop > h2,
.contents .optionaltour > h2,
.contents .hotelsrch > h2,
.contents .stories > h2,
.contents .divingtop > h2,
.contents .divingpage > h2,
.contents .hoteldtl > h2,
.contents .contactbox > h2 {
	font-size: 2.5rem;
	height: 50px;
	line-height: 50px;
	padding-left: 10px;
}
.contents .islandtop > h2 span,
.contents .islandtop > h2 a,
.contents .optionaltour > h2 span,
.contents .optionaltour > h2 a,
.contents .hotelsrch > h2 span,
.contents .hotelsrch > h2 a,
.contents .stories > h2 a,
.contents .stories > h2 span,
.contents .divingtop > h2 a,
.contents .divingtop > h2 span,
.contents .divingpage > h2 a,
.contents .divingpage > h2 span,
.contents .weddingtop > h2 a,
.contents .weddingtop > h2 span,
.contents .hoteldtl > h2 a,
.contents .hoteldtl > h2 span {
	display: none;
}

.block {
	padding-top: 20px;
}
.block h2 {
	margin: 0 10px;
	font-size: 1.8rem !important;
	letter-spacing: 0.1em !important;
}
.block h2 span:before,
.block h2 span:after {
	width: 15px;
	bottom: 14px;
}
.block h3 {
	margin: 10px 0 15px 0;
	font-size: 1.4rem;
}

.contents .blocks {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-top: 10px;
	margin: 10px 5px 0 5px;
	font-size: 1.6rem;
}
.contents .blocks > div {
	width: 100%;
	margin: 0;
}
.contents .blocks div:nth-child(2) {
	margin: 10px 0;
}

#home .block.campaign h3, #home .tours.recm h3, #home .tours .whitebg h3 {
	margin-bottom: 15px;
}
#home .tours .whitebg {
	padding-top: 20px;
}
.campaign > div {
	margin: 0 auto 35px auto;
	width: 80%;
}
#tab, #tabcamp {
	padding: 0 10px;
	margin: 0 2px 4px 2px;
}
#tab li, #tabcamp li {
	padding: 4px 10px;
}

.campaign li {
	background: #fff;
}
.campaign li p {
	padding: 0 10px;
	margin-bottom: 10px;
	font-size: 1.1rem;
}
.campaign li p.tag {
	font-size: 1.1rem;
	color: #fff;
	background: #69aae4;
	height: 23px;
	border-radius: 23px;
	display: inline;
	margin-left: 10px;
}
.campaign .bx-wrapper .bx-pager {
	bottom: -3px;
	height: 10px;
	padding-top: 15px!important;
}

.islandtop .campaign > div{
	margin-bottom: 0;
}
.weddingtop .campaign .bx-wrapper .bx-pager,
.divingtop .campaign .bx-wrapper .bx-pager {
	bottom: -38px;
}
.campaign .bx-wrapper .bx-controls-direction a {
	margin-top: -8px;
	width: 16px;
	height: 16px;
}
.campaign .bx-wrapper .bx-prev {
	background-size: 16px 16px !important;
	left: -9%; !important;
}
.campaign .bx-wrapper .bx-next {
	background-size: 16px 16px !important;
	right: -9%; !important;
}

.toursrch {
	padding: 6px;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.toursrch .ttl {
	background: #2283d8;
	padding: 10px;
	color: #fff;
	text-align: left;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	align-content: center;
}
.toursrch .ttl h2 {
	font-size: 2.4rem;
	font-weight: normal;
	margin-top: 8px;
	font-family: 'Libre Franklin';
}
.toursrch .ttl p {
	margin-right: 10px;
}
.toursrch .ttl p img {
	width: 30px;
	height: 30px;
}
.toursrch .ttl h2 br {
	display: none;
}
.toursrch .ttl span {
	font-size: 1.4rem;
	margin-left: 4px;
}
.toursrch .srcharea {
	background: #e1f1ff;
	font-size: 1.4rem;
	padding: 10px 10px;
	-webkit-flex-grow: 3;
	flex-grow: 3;
}
.toursrch .srcharea th,
.toursrch .srcharea td {
	width: 100%;
	display: block;
}
.toursrch .srcharea th {
	padding-right: 15px;
	padding-bottom: 0;
}
.toursrch .srcharea td {
	padding-bottom: 15px;
}
.toursrch .srcharea td input.long {
	border: 1px solid #ccc;
	width: 100%;
	padding: 5px 0;
}


.tours ul.tags {
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 15px;
	padding: 0 5px;
}
.tours ul.tags li {
	margin-left: 2px;
	margin-right: 2px;
	margin-bottom: 4px;
}
.tours ul.tags li a {
	font-size: 1.3rem;
	font-weight: bold;
	padding: 8px 10px;
}
.tours .bxtour li {
	background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #f1f8ff;
	background-size: 13px 13px;
	font-size: 1.2rem;
	font-weight: bold;
	padding-bottom: 12px;
}

.tours ul.optional {
	-webkit-flex-direction: column;
	flex-direction: column;
	margin: 0 5px 20px 5px;
}
.tours ul.optional li {
	background: url(../../images/icon-trianglecorner.png) right bottom no-repeat #fff;
	background-size: 16px 16px;
	max-width: 100%;
	width: 100%;
	margin-left: 0;
	margin-right: 0;
}
.tours ul.optional li:nth-child(2) {
	margin: 10px 0;
}
.tours ul.optional li > div {
	padding: 10px;
}

.tours .btn {
	font-size: 1.2rem;
	width: 95%;
	margin-bottom: 20px;
}
.tours .btn a {
	display: block;
	text-decoration: none;
	color: #2283d8;
	background: url(../../images/icon-arrblue.png) right 8px center no-repeat;
	background-size: 12px 12px;
}

.tours .tabrel {
	overflow: hidden;
}
.tours.recm + .tours {
	padding-bottom: 0;
}

.original .lead {
	padding: 0 10px;
	font-size: 1.4rem;
	margin-bottom: 15px;
}
.original .lead p:first-child {
	text-align: left;
	padding-top: 0;
	margin-top: 8px;
}
.original h3 {
	font-weight: bold;
	font-size: 1.6rem;
	margin-bottom: 10px;
	padding: 0 10px;
}
.original h3 span {
	padding-bottom: 5px;
	border-bottom: 1px solid #000;
}
.original .oritxt {
	padding: 0 10px 20px 10px;
	margin-bottom: 5px;
	font-size: 1.4rem;
	text-align: left;
}
.original .btns {
	margin: 0 auto;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.original .btns p {
	width: 95%;
	margin-bottom: 10px;
	font-size: 1.3rem;
	height: 50px;
	border-radius: 50px;
}
.original .btns p span {
	font-size: 1.6rem;
}
.original .btns p span.num {
	font-size: 1.8rem;
}
.original .btns p a {
	display: block;
	color: #f08629;
	background-size: 15px 15px;
	text-decoration: none;
}
.original .btns p:last-child a {
	color: #fff;
	background: none;
}
.original ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-direction: column;
	flex-direction: column;
	padding: 10px;
}
.original ul li {
	max-width: 100%;
	margin-bottom: 10px;
}
.original ul li:nth-child(2) {
	margin: 0 0 10px 0;
}
.original ul li:last-child {
	margin-bottom: 0;
}
.original ul li > div {
	padding: 10px 15px;
}
.original ul li p.name {
	font-size: 1.5rem;
	line-height: 1.4em;
}
.cntct {
	padding-top: 0;
	padding-bottom: 0px;
}
.cntct .lead {
	font-size: 1.4rem;
	padding: 10px;
	text-align: left;
	margin: 0 auto;
	position: relative;
}
.cntct .lead br {
	display: none;
}
.cntct > div {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	justify-content: space-around;
	-webkit-flex-direction: column;
	flex-direction: column;
	padding-top: 15px;
}
.cntct .tel {
	text-align: center;
	margin-bottom: 15px;
}
.cntct .btns p a {
	height: 30px;
	width: 80%;
	margin: 0 auto;
	border-radius: 30px;
	line-height: 30px;
	font-size: 1.3rem;
	padding: 0 20px;
}
.cntct .btns p.mail a {
	background: url(../../images/icon-arrctc.png) right 30px center no-repeat #fff;
	background-size: 13px 13px;
}
.cntct .btns p.mail a:hover {
	background-size: 13px 13px;
}
.cntct .btns p.form a {
	background: url(../../images/icon-search.png) right 15px center no-repeat #0a5da7;
	background-size: 12px 12px;
}
.cntct .btns p.form a:hover {
	background-size: 12px 12px;
	background-position: right 15px center;
}
.cntct .btns p {
	margin-bottom: 10px;
}

footer .social {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-bottom: 10px;
}
footer .social > div > div {
	padding: 10px;
	z-index: 100;
}
footer .social .fb {
	margin: 10px 0;
	width: 100%;
}
footer .social .blogs {
	width: 100%;
}
footer .social > div.blogs > div {
	background: #fff;
	-webkit-flex: none;
	-ms-flex: none;
	flex: none;
	display: block;
}
footer .social .footnews {
	width: auto;
}
footer .links {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-bottom: 40px;
}
footer .links > div {
	background: #fff;
	padding: 6px;
	-webkit-flex-grow: 1;
	flex-grow: 1;
	height: auto;
}
footer .links .link {
	margin-right: 0;
}
footer .links .link ul {
	background-image: -moz-linear-gradient( 180deg, rgb(203,243,242) 0%, rgb(208,235,255) 100%);
	background-image: -webkit-linear-gradient( 180deg, rgb(203,243,242) 0%, rgb(208,235,255) 100%);
	background-image: -ms-linear-gradient( 180deg, rgb(203,243,242) 0%, rgb(208,235,255) 100%);
	padding: 8px;
}
footer .links .link li {
	background-color: rgba(0, 0, 0, 0.2);
	height: 40px;
	border-radius: 40px;
	border: 2px solid #fff;
	text-align: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
}
footer .links .link li:first-child {
	margin-bottom: 10px;
}
footer .links .link li a {
	text-align: center;
	background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat;
	background-size: 13px 13px;
	text-decoration: none;
	display: block;
	width: 100%;
	color: #fff;
	font-weight: bold;
	font-size: 1.3rem;
	line-height: 1.2em;
}
footer .links .link li a span {
	font-size: 1.2rem;
}
footer .links .blogs {
	margin-left: 0;
	margin-top: 10px;
	background: url(../../images/bg-blog.jpg) right top no-repeat #fff;
	background-size: 140px 113px;
	padding-right: 150px;
}
footer .links .blogs h3 {
	font-size: 1.4rem;
	font-family: 'Libre Franklin';
	letter-spacing: 0.2em;
	text-align: center;
	background: url(../../images/line-cntct.png) center bottom no-repeat;
	padding-bottom: 3px;
	margin-bottom: 5px;
}
footer .links .blogs li {
	font-size: 1.2rem;
	padding-left: 5%;
	margin-bottom: 3px;
}
footer .links .blogs li i {
	margin-right: 5px;
}
footer .bnrs {
	padding: 15px 0 10px 0;
	margin-bottom: 0;
}
footer .bnrs li img {
	width: 135px;
	height: auto;
}
footer .footlinks {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin-bottom: 20px;
	padding: 10px 1% 10px 1%;
	width: 98%;
}
footer .footlinks li {
	margin-right: 0;
	width: 49%;
}
footer .footlinks li a {
	font-size: 1.2rem;
	color: #333;
}
footer .footlinks li a i {
	margin-right: 5px;
}

footer .copy {
	text-align: center;
	font-size: 1.1rem;
	padding-bottom: 8px;
}
footer .copy p:last-child {
	font-size: 1.0rem;
	margin-top: 15px;
	text-align: left;
}
footer .copy ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
footer .copy ul li {
	width: 25%;
	margin: 0;
}
footer .copy ul li p {
	padding: 0 3px;
}
footer .copy ul li p img {
	width: 100%;
	height: auto;
}

.contents .visual {
	margin-top: 10px;
}
.contents .visual li .pic {
	width: 100%;
	min-height: 160px;
}
.contents .visual li .info {
	display: none;
}
.contents .topvisual {
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-top: 6px;
}
.contents .topvisual .picwrap {
	width: 100%;
	min-height: 230px;
}
.contents .topvisual .infowrap {
	width: 100%;
}
.contents .topvisual .infowrap .bxinfo {
	display: none;
}
.contents .topvisual .infowrap .bx-wrapper {
	display: none;
}
.contents .topvisual .infowrap .spinfo {
	display: block;
	padding-top: 10px;
}
.contents .topvisual .infowrap .spinfo h3 {
	margin-bottom: 10px;
	margin-top: 6px;
}
.contents .topvisual .infowrap .spinfo .lead {
	padding: 0 10px 10px 10px;
	font-size: 1.3rem;
}
.contents .topvisual .infowrap .spinfo .btns {
	width: 95%;
	margin: 0 auto;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	justify-content: center;
}
.contents .topvisual .infowrap .spinfo .btns p {
	width: 95%;
	font-size: 1.3rem;
	height: 50px;
	border-radius: 50px;
	margin: 0 10px 10px 10px;
	line-height: 1.7em;
	font-weight: bold;
	text-align: center !important;
	background: #fff;
	border: 1px solid #f08629;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	justify-content: center;
}
.contents .topvisual .infowrap .spinfo .btns p:last-child {
	background: #145493;
	border: 1px solid #145493;
	color: #fff;
}
.contents .topvisual .infowrap .spinfo .btns p:last-child:hover {
	background: #145493;
}
.contents .topvisual .infowrap .spinfo .btns p span {
	font-size: 1.6rem;
}
.contents .topvisual .infowrap .spinfo .btns p span.num {
	font-size: 1.8rem;
}
.contents .topvisual .infowrap .spinfo .btns p a {
	display: block;
	color: #f08629;
	background: url(../../images/icon-arrctc.png) right 20px center no-repeat;
	background-size: 15px 15px;
	text-decoration: none;
}
.contents .topvisual .infowrap .spinfo .btns p:hover {
	background: #f08629;
}
.contents .topvisual .infowrap .spinfo .btns p a:hover {
	background: url(../../images/icon-arrlwhite.png) right 20px center no-repeat #f08629;
	background-size: 26px 26px;
	color: #fff;
	border-radius: 80px;
}
.contents .topvisual .infowrap .spinfo .btns p:last-child a {
	color: #fff;
	background: none;
}



@media screen and (max-width: 320px){
	.contents .topvisual .picwrap {
		min-height: 160px;
	}
}

.contents ul.submenu {
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	font-size: 1.4rem;
	border-bottom: 1px solid #0b599d;
}
.contents ul.submenu.wedding {
	border-bottom: 1px solid #e374a9;
}
.contents ul.submenu.diving {
	border-bottom: 1px solid #23a58d;
}
.contents ul.submenu li {
	float: none;
}
.contents ul.submenu li a {
	padding: 6px 10px;
	display: block;
	text-align: left;
}
.contents ul.submenu + ul.submenu li a {
	padding: 6px 10px;
}
.contents ul.submenu ul {
	background: #3079b9;
}
.contents ul.submenu.wedding ul {
	background: #cd568f;
}
.contents ul.submenu.diving ul {
	background: #1b907b;
}
.contents ul.submenu ul {
	visibility: visible;
	opacity: 1;
	transition: linear;
	display: none;
}
.contents ul.submenu li:hover > ul {
	visibility: visible;
	opacity: 1;
}
.optionaltour .maininfo {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.optionaltour .maininfo .pics {
	width: 100%;
}
.optionaltour .maininfo .txt {
	margin: 10px 0 0 0;
}
.optionaltour .freebox .fulltxt iframe{
	width:100% !important;
	}
.optionaltour .maininfo .pics img.sp-thumbnail {
	margin-left: 0 !important;
}

.islandtop .mapvisual-sp {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.islandtop .mapvisual-sp .map {
	width: 100%;
}
.islandtop .mapvisual-sp .map img {
	width: 100%;
	height: auto;
}
.islandtop .mapvisual-sp .campbox {
	width: 100%;
	padding: 16px 0;
}
.islandtop .mapvisual-sp .campbox .slick-prev {
	top: -13px;
}
.islandtop .mapvisual-sp .campbox .slick-next {
	bottom: -13px;
}
.islandtop .mapvisual-sp .campbox ul li div p span.tag span {
	font-size: 1.2rem;
}
.islandtop .mapvisual-sp .campbox ul li div p {
	font-size: 1.3rem;
}
.islandtop .isbnr {
	margin-left: 10px;
	margin-right: 10px;
	margin-top: 10px;
}
.islandtop .isbnr img {
	width: 100%;
	height: auto;
}
.islandtop .block.island > p {
	margin-bottom: 20px;
	padding: 0 10px;
}
.islandtop .block.island ul li,
.islandtop .block.island .onlytwo ul li {
	width: 100%;
}
.islandtop .block.island ul li .hotellist .list {
	height: 0;
	overflow: hidden;
	padding: 0;
	position: relative;
	top: 0px;
	left: 0px;
	display: block;
	width: auto;
}
.islandtop .block.island ul li .hotellist input:checked + .list {
	position: absolute;
	height: auto;
	padding: 10px;
	background: none;
	border: none;
	left: 0;
	top: 50px;
	background: #efefef;
	text-align: left;
}


.islandtop .block.hotels {
	margin-top: 30px;
}
.islandtop .block.hotels ul li {
	width: 100%;
	margin-bottom: 10px;
}

.contents .hotelsrch .block.recommend h3 {
	margin-bottom: 10px;
}
.contents .hotelsrch .block.recommend.results ul li {
	width: 100%;
	margin-bottom: 10px;
}
.contents .hotelsrch .block.srchlead .lead {
	padding: 15px 10px;
}
.contents .hotelsrch .block.srchbox h3 {
	padding: 0 10px;
}
.contents .hotelsrch .block.recommend ul li {
	width: 48%;
	margin: 10px 1% 0 1%;
	padding-bottom: 0px;
}
.contents .hotelsrch .block.recommend li h4 {
	font-size: 1.4rem;
}
.contents .hotelsrch .block.recommend li p.dtl {
	display: none;
}

.optionaltour > h3, .stories > h3 {
	font-size: 1.8rem;
	line-height: 1.4em;
	padding: 0 10px;
}
.optionaltour > p.descr, .stories > p.descr {
	padding: 0 10px;
}
.optionaltour .maininfo .txt {
	font-size: 1.4rem;
}
.contents .freebox {
	padding: 10px;
}

.islandtop .block.activity {
	margin-top: 0px;
}
.islandtop .block.activity > div {
	width: 100%;
}
.islandtop .block.activity > div.wedding,
.islandtop .block.activity > div.diving,
.islandtop .block.activity > div.two {
	width: 100%;
}

.toursearch.pop {
	margin: 0;
}
.islandtop .toursearch > div {
	margin-top: 0;
}
.toursearch > div {
	margin: 40px 5px 0 5px;
	padding: 6px;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.toursearch .ttl {
	background: #2283d8;
	padding: 10px;
	color: #fff;
	text-align: left;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	align-content: center;
}
.toursearch .ttl h2 {
	font-size: 2.4rem;
	font-weight: normal;
	margin-top: 8px;
	font-family: 'Libre Franklin';
}
.toursearch .ttl p {
	margin-right: 10px;
}
.toursearch .ttl p img {
	width: 30px;
	height: 30px;
}
.toursearch .ttl h2 br {
	display: none;
}
.toursearch .ttl span {
	font-size: 1.4rem;
	margin-left: 8px;
	display: inline;
}
.toursearch .srcharea {
	background: #e1f1ff;
	font-size: 1.4rem;
	padding: 10px 10px;
	-webkit-flex-grow: 3;
	flex-grow: 3;
}
.toursearch.pop .srcharea {
	padding: 10px 10px;
}
.toursearch .srcharea .col {
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-bottom: 0px;
}
.toursearch .srcharea .col dl {
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-bottom: 15px;
}
.toursearch .srcharea .col dl dt {
	width: 100%;
}
.toursearch .srcharea .col.col-2 dl,
.toursearch .srcharea .col.col-3 dl:first-child {
	width: 100%;
}
.toursearch .srcharea .col.col-1 dl {
	width: 100%;
}
.toursearch .srcharea .code input {
	width: 90%;
	padding: 5px;
}

.toursearch .btn {
	padding: 0;
	margin-top: 10px;
}
.toursearch .btn a,
.toursearch .btn input {
	width: 90%;
}

.tours > div {
	width: 88%;
}
.tours .content_wrap {
	width: 85% !important;
}
.tours .bx-wrapper .bx-controls-direction a {
	width: 15px;
	height: 15px;
}
.tours .bx-wrapper .bx-prev {
	background: url(../../images/icon-sliderprev.png) 0 0 no-repeat;
	background-size: 15px 15px;
	left: -7%;
}
.tours .bx-wrapper .bx-next {
	background: url(../../images/icon-slidernext.png) 0 0 no-repeat;
	background-size: 15px 15px;
	right: -7%;
}
.tours .whitebg {
	padding-top: 20px;
}
.tours .whitebg ul.tags {
	padding-bottom: 6px;
}

.islandtop .options {
	width: 90%;
	font-size: 1.4rem;
}
.islandtop .options a {
	background: none;
}
.islandtop .options a:hover {
	background: none;
	color: #2283d8;
}
.islandtop .block.optional ul.tags {
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 0px;
	margin-bottom: 10px;
}
.islandtop .block.optional ul.tags li {
	margin-bottom: 12px;
}
.islandtop .block.optional ul.tags li a {
	font-size: 1.3rem;
	font-weight: bold;
	padding: 8px 10px;
}

.islandtop .block.optional h4 {
	font-size: 1.7rem;
	margin-top: 10px;
	padding-top: 15px;
}
.islandtop .block.optional .opttl {
	padding-bottom: 15px;
}

.islandtop .block.optional ul.lists {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.islandtop .block.optional ul.lists li {
	width: 100%;
}

.islandtop .block.optional ul.lists li .listhead {
	flex-direction: column-reverse;
}
.islandtop .block.optional ul.lists li .listhead > div {
	width: 100%;
}
.islandtop .opbtn {
	width: 95%;
	font-size: 1.4rem;
}
.islandtop .block.areatop .lead {
	padding: 0 10px;
}
.islandtop .block.areatop ul li,
.islandtop .block.areatop ul.two li {
	width: 100%;
}
.islandtop .block.areatop ul li h4 {
	padding: 10px 10px 10px 10px;
}
.islandtop .block.areatop ul li .btns {
	margin: auto 10px 0 10px;
}
.islandtop .block.islandact h3 {
	padding: 8px 10px 10px 10px;
}
.islandtop .block.souvenirblock h4 {
	margin-top: 10px;
}
.islandtop .block.islandact ul li {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.islandtop .block.islandact ul li .pic {
	min-width: 100%;
	max-width: 100%;
	margin: 0 0 10px 0;
}
.islandtop .block.islandact ul li .info {
	padding: 5px 0px 10px 0px;
}
.islandtop .block.islandact ul li .info h4 {
	font-size: 1.7rem;
}
.islandtop .block.islandact ul li .info h4 + p {
	margin-top: 10px;
}
.islandtop .block.souvenirblock {
	margin-top: 15px;
}
.islandtop .block.souvenirblock ul li {
	width: 50%;
}
.islandtop .block.souvenirblock ul li.long > div {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.islandtop .block.souvenirblock ul li.long .pic {
	max-width: 100%;
	min-width: 100%;
	margin: 0 0 10px 0;
}
.islandtop .block.souvenirblock ul li.long .info {
	padding: 5px 0px 10px 0px;
}
.islandtop .block.info ul li {
	-webkit-flex-direction: column;
	flex-direction: column;
	padding: 10px;
}
.islandtop .block.info ul li .pic {
	text-align: center;
	margin-bottom: 10px;
	margin:auto;
}
.islandtop .block.info ul li .centertxt img {
	max-width: 100%;
}
.islandtop .block.info ul li.holiday .pic {
	width: 100%;
	margin: 0 0 10px 0;
}

.divingtop .block {
	margin-top: 30px;
}
.divingtop .block.location p.lead {
	padding: 0 5px;
	text-align: left;
}
.divingtop .block.location p.lead br {
	display: none;
}
.divingtop .block.location ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-top: 20px;
}
.divingtop .block.location ul li {
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	margin-bottom: 10px;
}
.divingtop .block.location ul li:last-child {
	margin-bottom: 0;
}
.divingtop .block.marine {
	margin-top: 10px;
}
.divingtop .block.marine ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-top: 20px;
}
.divingtop .block.marine ul li {
	width: 100%;
	margin-bottom: 10px;
}
.divingtop .block.marine ul li:last-child {
	margin-bottom: 0;
}
.divingtop .block.faq {
	margin-top: 10px;
}
.divingtop .block.faq > div {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.divingtop .block.faq .pic {
	width: 100%;
}
.divingtop .block.faq .txt {
	width: 100%;
}
.divingtop .block.faq .txt p {
	padding-left: 0;
	text-align: center;
}
.divingtop .block.faq .txt p.btn {
	padding: 0px 0px 10px 0px;
}
.divingtop .block.faq .txt h4 {
	padding: 15px 0;
	font-size: 1.7rem;
}
.divingtop .campaign > div {
	margin-top: 15px;
}


.divingpage .block p.lead {
	padding: 0 10px;
	text-align: left;
}
.divingpage .block p.lead br {
	display: none;
}
.divingpage .block.divinglead .btn a {
	width: 90%;
	font-size: 1.4rem;
	background: #68cebc;
	height: auto;
	padding: 10px 2%;
	line-height: 1.4em;
}
.divingpage .block.divinglead .btn a:hover {
	background: #17ad93;
}
.divingpage .block.recommend .whiteblock {
	padding: 15px;
}
.divingpage .block.recommend ul li {
	width: 100%;
}
.divingpage .block.recommend ul.two li {
	width: 100%;
}
.divingpage .block.experience {
	padding-top: 10px;
}
.divingpage .block.experience .whiteblock {
	padding-bottom: 0;
}
.divingpage .block.experience .whiteblock p {
	padding: 0 10px;
}
.divingpage .block.experience ul {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.divingpage .block.experience ul li {
	margin-bottom: 10px;
	width: 100%;
}
.divingpage .block.experience ul li div {
	padding: 0;
}
.divingpage .block.movie {
	padding-top: 15px;
	padding-bottom: 10px;
}
.divingpage .block.movie ul {
	-webkit-flex-direction: column;
	flex-direction: column;
	padding: 0;
}
.divingpage .block.movie ul li > div {
	margin: 0;
	padding-bottom: 0;
}
.divingpage .block.movie ul li {
	width: 100%;
	margin-bottom: 10px;
}
.divingpage .block.movie ul li:last-child {
	margin-bottom: 0;
}
.divingpage p.ikimono a {
	width: 90%;
	font-size: 1.4rem;
	height: auto;
	padding: 10px 2%;
	line-height: 1.4em;
	background: #68cebc;
}
.divingpage p.ikimono a:hover {
	background: #17ad93;
}
.divingpage .block.divinglead {
	margin-bottom: 15px;
}
.divingpage .block.divinglead .ikimono {
	padding: 0 15px;
	text-align: left;
}
.divingpage .block.divinglead h2 + .ikimono {
	text-align: left;
	margin-top: 15px;
}
.divingpage .block.divinglead .ikimonoauth {
	padding: 0 15px;
}
.divingpage .block.recommend.ikimonolist ul li {
	width: 50%;
}
.divingpage .block.divinglead .flbox {
	padding: 15px 15px 0 15px;
}
.divingpage .block.divinglead .flbox .txt {
	margin-bottom: 15px;
}
.divingpage .block.divinglead .flbox .btns {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.divingpage .block.divinglead .flbox .btns p {
	margin: 0 0 10px 0;
}
.divingpage .block.divinglead .flbox .btns a {
	width: 92%;
	padding: 10px 4%;
	background: #68cebc;
	height: auto;
	line-height: 1.4em;
}
.divingpage .block.divinglead .flbox .btns .btnhotel a {
	background: #5ba7e9;
}
.divingpage .block.recommend.divingpoint ul li {
	width: 100%;
}
.divingpage .block.recommend.divingpoint .btn {
	margin: 10px 5px 0 5px;
}
.divingpage .block.recommend.divingpoint .btn a {
	width: 92%;
	padding: 10px 4%;
	background: #68cebc;
	height: auto;
	line-height: 1.4em;
}
.divingpage .block.recommend.divingpoint .btn a:hover {
	background: #68cebc;
}
.divingpage .block.recommend.divingpics ul li {
	width: 50%;
}
.divingpage .block.recommend.divingpics ul li .descr {
	padding: 10px;
}
.divingpage .season img {
	width: 100%;
	height: auto;
}

.islandtop .block.golftop {
	margin-top: 20px;
}
.islandtop .block.golftop h3 {
	padding: 0 15px;
}
.islandtop .block.golftop p.lead {
	padding: 0 15px 20px 15px;
}
.islandtop .block.golftop p.courses {
	margin: 0 5px 20px 5px;
}
.islandtop .block.golftop p.courses img {
	width: 100%;
	height: auto;
	border: 0;
}
.islandtop .block.golftop ul {
	margin-bottom: 10px;
}
.islandtop .block.golftop ul.top3 li {
	width: 100%;
	margin-bottom: 10px;
}
.islandtop .block.golftop ul.top3 li:last-child {
	margin-bottom: 0;
}
.islandtop .block.golftop ul li {
	width: 50%;
	margin-bottom: 10px;
}
.islandtop .block.golftop ul li:last-child {
	margin-bottom: 0;
}
.islandtop .golfbtn {
	margin: 0 10px;
}
.islandtop p.golfbtn a {
	width: 92%;
	padding: 10px 4%;
	height: auto;
	line-height: 1.4em;
	background: #31b627;
	font-size: 1.3rem;
}
.islandtop p.golfbtn a:hover {
	background: #46cb3d;
}
.islandtop .block.golfstyle {
	padding: 15px;
}
.islandtop .block.golfstyle > p {
	padding: 0;
	margin-top: 15px;
}
.islandtop .block.golfstyle ul {
	padding: 0;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.islandtop .block.golfstyle ul li {
	width: 100%;
	margin-bottom: 10px;
}
.islandtop .block.golfstyle ul li:last-child {
	margin-bottom: 0;
}
.islandtop .block.golfstyle ul li div {
	padding: 0;
}
.islandtop .block.golftop .spec {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.islandtop .block.golftop .spec .pic {
	width: 100%;
	margin: 0 0 10px;
}
.islandtop .block.golftop .spec .info {
	font-size: 1.4rem;
	padding: 0px 0px 10px 0px;
}
.islandtop .block.golftop .spec .info h4 {
	font-size: 1.8rem;
}

.islandtop .block.golftop .course ul {
	margin-top: 10px;
}
.islandtop .block.golftop .course ul li {
	width: 50%;
	margin-bottom: 0;
}
.islandtop .block.golftop .oneblock {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.islandtop .block.golftop .oneblock .pic,
.islandtop .block.golftop .clubhouse .pic {
	width: 100%;
	margin: 0 0 10px 0;
}
.islandtop .block.golftop .oneblock .info,
.islandtop .block.golftop .clubhouse .info {
	padding: 0 0 10px 0;
	font-size: 1.4rem;
}
.islandtop .block.golftop .oneblock .info h4 {
	margin-bottom: 10px;
}
.islandtop .block.golftop .clubhouse > div {
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-top: 15px;
}
.islandtop .block.golftop .clubhouse ul li {
	width: 50%;
	margin-bottom: 0;
}
.islandtop .block.golftop .resort ul li {
	width: 50%;
	margin-bottom: 0;
}
.islandtop .block {
	margin-top: 20px;
}
.islandtop .block.campaign {
	margin-top: 0;
}
.islandtop .block.areatop h3 {
	padding: 0 10px;
}
.islandtop .block.culturetop ul li {
	width: 100%;
}
.islandtop .block.culturelow p.lead {
	padding: 0 10px;
	text-align: left;
}
.islandtop .block.culturelow ul li {
	width: 100%;
}
.islandtop .tabs {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.islandtop .tabs li {
	width: 100%;
	margin: 0;
	font-size: 1.5rem;
}
.islandtop .tabs li a {
	padding: 5px 10px;
	border-bottom: 1px solid #efefef;
}
.islandtop .tab-content {
	margin-top: 10px;
}
.islandtop .block.info ul li h4 {
	font-size: 1.7rem;
	margin-top: 10px;
}
.islandtop .block.info h3 {
	font-size: 1.6rem;
	margin-top: 15px;
}
.islandtop .block.info .righttxt {
	text-align: left !important;
}
.islandtop .block.points > p {
	padding: 0 15px 15px 15px;
	text-align: left;
}

.islandtop .block.points ul li {
	-webkit-flex-direction: column;
	flex-direction: column;
	padding: 10px;
}
.islandtop .block.points ul li .pic {
	width: 100%;
	margin: 0 0 10px 0;
}
.onewhite {
	padding: 15px;
}
.onewhite .btn {
	-webkit-flex-direction: column;
	flex-direction: column;
	width: 100%;
}
.onewhite .btn a {
	width: 92%;
	padding: 10px 4%;
	height: auto;
	line-height: 1.4em;
	margin: 0 auto;
}

.onewhite > table th,
.onewhite > table td {
	width: 92%;
	display: block;
	padding: 10px 4%;
	border-top: none;
}
.onewhite > table tr:first-child th {
	border-top: 1px solid #ccc;
}
.onewhite > table td img.fullimg {
	width: 100%;
	height: auto;
}

.weddingtop .flowers {
	display: none;
}
.weddingtop .mainvis {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	flex-direction: column-reverse;
}
.weddingtop .mainvis .flbx {
	position: relative;
	top: auto;
	left: auto;
	height: auto;
	width: auto;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	justify-content: flex-end;
}
.weddingtop .mainvis .flbx > div {
	width: auto;
	margin: 10px 10px 0 10px;
	background-color: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	justify-content: space-around;
}
.weddingtop .mainvis .flbx > div h3 {
	font-size: 2.0rem;
	line-height: 1.5em;
	font-weight: bold;
	color: #e04b92;
	padding: 10px 15px 10px 15px;
}
.weddingtop .mainvis .flbx > div p {
	font-size: 1.4rem;
	padding: 0 15px 10px 15px;
}
.weddingtop .mainvis .flbx > div p:last-child {
	padding-bottom: 20px;
}

.weddingtop .mainvis img {
	width: 100%;
	height: auto;
}
.weddingtop .mainvis .wedttl {
	bottom: 10px;
	left: 10px;
}
.weddingtop .mainvis .wedttl h3 {
	font-size: 2.0rem;
}
.weddingtop .block {
	margin-top: 30px;
}
.weddingtop .block.resort h3 {
	padding: 0 10px;
}
.weddingtop .block.resort p.lead {
	padding: 20px 10px 0 10px;
}
.weddingtop .block.resort ul li {
	width: 50%;
}
.weddingtop .block.resort ul li h4 br {
	display: none;
}
.weddingtop .block.plans ul li {
	width: 100%;
	margin-bottom: 10px;
}
.weddingtop .block.plans ul li:last-child {
	margin-bottom: 0;
}
.weddingtop .block.plans ul li h4 {
	font-size: 1.5rem;
}
.weddingtop .block.agent {
	padding: 20px 15px;
}

.weddingtop .block.campaign {
	padding-top: 20px;
}

.weddingtop .campaign p.lead {
	text-align: center;
	padding: 10px 5px 15px 5px;
}
.weddingtop .block.location .lead {
	padding: 0 10px;
	text-align: left;
}
.weddingtop .block.location .lead br {
	display: none;
}
.weddingtop .block.location ul {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-top: 20px;
}
.weddingtop .block.location ul li {
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	margin-bottom: 10px;
}
.weddingtop .block.location ul li:last-child {
	margin-bottom: 0;
}

.weddingtop .block.photo {
	margin-top: 10px;
}
.weddingtop .block.photo > div {
	background: #fff;
	margin: 0 5px;
	padding: 20px 10px 0px 10px;
}
.weddingtop .block.photo p.lead {
	padding-top: 0;
}
.weddingtop .block.photo .recommend {
	padding: 25px 10px 15px 10px;
	width: auto;
	margin: 25px auto 10px auto;
}
.weddingtop .block.photo .recommend > p {
	margin-bottom: 25px;
}
.weddingtop .block.photo .recommend ul li {
	margin-left: 15px;
}
.weddingtop .block.photo .recommend ul li:before {
	left: -8px;
	top: -2px;
}
.weddingtop .block.photo ul.area {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.weddingtop .block.photo ul.area li {
	width: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	margin-bottom: 10px;
}
.weddingtop .block.photo ul.area li:last-child {
	margin-bottom: 0;
}
.weddingtop .block.photo ul.area li > div {
	margin: 0;
}

.weddingtop .block.dress {
	margin-top: 0px;
}
.weddingtop .block.dress .txt h2 {
	margin: 0 auto 15px auto;
}
.weddingtop .block.dress > div {
	margin: 0 5px;
}
.weddingtop .block.dress > div > div {
	background: #fff;
	min-height: auto;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	justify-content: flex-end;
}
.weddingtop .block.dress .txt {
	width: auto;
	padding: 10px 10px 0 10px;
	font-size: 1.4rem;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	overflow: hidden;
}
.weddingtop .block.dress .txt .sp {
	display: block;
	margin-bottom: 10px;
}
.weddingtop .block.dress .txt .sp img {
	width: 100%;
	height: auto;
}
.weddingtop .block.dress .btn {
	margin: 20px auto 0 auto;
	width: 200px;
	text-align: center;
	padding: 0 0 20px 0;
}

.weddingtop .block.information .flbox .plan,
.weddingtop .block.information .flbox .video {
	width:100%;
	margin-bottom: 10px;
	height:100%;
}

.weddingtop .video iframe{
	min-height:300px;
}

.weddingtop .block.information .flbox .descr,
.weddingtop .block.information .flbox .data {
	width: 100%;
}
.weddingtop .block.information > .btn a {
	width: 92%;
	padding: 10px 4%;
	height: auto;
	line-height: 1.4em;
	background: #f4a6cb !important;
}
.weddingtop .block.information > .tourbtn a {
	width: 92%;
	padding: 10px 4%;
	height: auto;
	line-height: 1.4em;
	background: #2283d8 !important;
}

.weddingtop .block.gallery.photog ul li,
.weddingtop .block.gallery ul li {
	width: 50%;
}
.weddingtop .headinfo {
	padding: 15px 15px;
}
.weddingtop .headinfo h3 {
	font-size: 2.6rem;
}
.weddingtop .headinfo h3 span {
	font-size: 1.6rem;
}
.weddingtop .headinfo h4 {
	font-size: 1.5rem;
}
.weddingtop .block.information .flbox > div > div {
	padding: 10px 15px;
}
.weddingtop .block.information .flbox h3 {
	font-size: 1.6rem;
}
.weddingtop .block.information .flbox .btn {
	width: 100%;
}
.weddingtop .block.information .flbox .btn a {
	font-size: 1.4rem;
	background: url(../../images/icon-arrpink.png) right 10px center no-repeat;
	background-size: 18px 18px;
}
.weddingtop .block.information .flbox .btn a:hover {
	background: url(../../images/icon-arrlwhite.png) right 10px center no-repeat #e577ab;
	background-size: 18px 18px;
}

.block.dresscp {
	margin-top: 15px !important;
}
.block.dresscp ul li > div {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.block.dresscp ul li .pic {
	max-width: 100%;
	min-width: 100%;
	margin: 0 0 10px 0;
}
.block.dresscp ul li .info {
	padding: 5px 0px 10px 0px;
}
.hoteldtl .headinfo {
	padding: 15px;
}
.contents .hoteldtl .headinfo .flblock {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.hoteldtl .headinfo .pic {
	margin: 0 auto 15px auto;
}
.hoteldtl .headinfo h3 {
	font-size: 2.6rem;
	line-height: 1.4em;
}
.hoteldtl .headinfo h3 span {
	font-size: 1.6rem;
	line-height: 1.4em;
	margin-top: 10px;
	display: block;
}
.hoteldtl .headinfo .link {
	font-size: 1.4rem;
	line-height: 1.4em;
	margin-top: 10px;
}
.hoteldtl .headinfo .link a {
	word-break: break-all;
}
.hoteldtl .headinfo h4 {
	font-size: 1.5rem;
}
.hoteldtl .headinfo .lead {
	margin-bottom: 15px;
}
.hoteldtl .headinfo p.tour,
.hoteldtl .headinfo p.wed {
	width: 100%;
	margin: 0 auto 15px auto;
}
.hoteldtl .headinfo p.tour a {
	padding: 0 25px 0 25px;
	background: url(../../images/icon-search.png) right 16px center no-repeat #2283d8;
	background-size: 17px 17px;
}
.hoteldtl .headinfo p.wed a {
	background: #e577ab;
	padding: 0;
}
.hoteldtl .tabs {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.hoteldtl .tabs li {
	width: 100%;
	margin: 0;
	font-size: 1.5rem;
}
.hoteldtl .tabs li a {
	padding: 5px 10px;
	border-bottom: 1px solid #efefef;
}
.hoteldtl .block.data, .hoteldtl .block.restaurant, .hoteldtl .block.spa, .hoteldtl .block.activity {
	margin-top: 10px;
}

.hoteldtl .block.activity p.schedule{
	width:100%;
	padding-left:0;
	}

.hoteldtl .block.activity p.schedule a{
	font-size:1rem;
	padding: 0 10px 0 10px;
	}

.hoteldtl .block.data .white {
	padding-top: 10px;
}
.hoteldtl .visual {
	padding: 0;
}
.hoteldtl .block.gallery,
.hoteldtl .block.movie,
.hoteldtl .block.present {
	margin-top: 15px;
}
.hoteldtl .block ul li {
	padding: 10px;
}
.hoteldtl .block.present li .pic {
	width: 100%;
	margin: 0 0 10px 0;
}
.hoteldtl .block ul li .info {
	padding: 0;
}
.hoteldtl .block ul li .info h4 {
	font-size: 1.7rem;
}
.hoteldtl .block.gallery ul {
	padding: 10px 10px 0 10px;
}
.hoteldtl .block.gallery ul li {
	width: 33.33333%;
}
.hoteldtl .block.movie ul {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.hoteldtl .block.movie ul li {
	width: 100%;
	margin-bottom: 10px;
}
.hoteldtl .block.movie ul li:last-child {
	margin-bottom: 0;
}
.hoteldtl .block.movie ul li > div {
	padding: 10px 0;
}

.hoteldtl .block ul li {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.hoteldtl .block ul li .pic {
	min-width: 100%;
	margin-right: 0;
}
.hoteldtl .block.data .access {
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-bottom: 10px;
}

.hoteldtl .block.data .access .map{
	width: 100%;
}

.hoteldtl .block.data .access .map img {
	width: 100%;
	height: auto;
}
.hoteldtl .block.data .map a {
	padding: 0;
}
.hoteldtl .block .white {
	padding:  20px 10px 10px 10px;
}
.hoteldtl .block.data table th,
.hoteldtl .block.data table td {
	width: 92%;
	display: block;
	padding: 10px 4%;
	border-top: none;
}
.hoteldtl .block.data table tr:first-child th {
	border-top: 1px solid #ccc;
}
.hoteldtl .block.data table.chart th,
.hoteldtl .block.data table.chart td {
	width: 23%;
	display: table-cell;
	padding: 8px 1%;
	vertical-align: middle;
	text-align: center;
	border-top: 1px solid #ccc;
	font-size: 1.3rem;
	line-height: 1.4em;
}
.hoteldtl .block.restaurant ul:first-child li:first-child, .hoteldtl .block.spa ul:first-child li:first-child {
	padding-top: 10px;
}
.hoteldtl .block ul li .pic,
.hoteldtl .block ul li.reverse .pic {
	margin: 0 0 10px 0;
}
.hoteldtl .block ul li.reverse {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.hoteldtl .block ul li.reverse .info {
	padding: 0;
}

.optionaltour .tourdata table th{
	display:block;
	width: 92% !important;
	padding:10px 4%;
}

.optionaltour .tourdata table td{
	display:block;
	width: 92% !important;
	padding:10px 4%;
}

table.type09 td {
	display:block;
}

table.type09 td.title {
	background-color:#f0f0f0;
}


.block.contactlead .cnttabs {
	margin-top: 15px;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.block.contactlead .cnttabs li {
	font-size: 1.5rem;
	margin: 0;
	width: 100%;
}
.block.contactlead .cnttabs li a {
	padding: 5px 10px;
	border-bottom: 1px solid #efefef;
}
.contactbox .tab-content {
	margin-top: 10px;
	padding: 15px 15px 0 15px;
}
.contactbox .tab-content.thanks {
	padding-bottom: 15px;
}
.contactbox .type {
	font-size: 1.3rem;
	padding-bottom: 0;
}
.contactbox dl {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.contactbox dt {
	width: 100%;
	margin-bottom: 5px;
}
.contactbox dd {
	width: 100%;
	padding-left: 0%;
}
.contactbox dd input[type="text"], .contactbox dd input[type="email"] {
	width: 90%;
}
.contactbox dl.policy {
	font-size: 1.3rem;
}
.contactbox dl.policy dd {
	font-size: 1.3rem;
}
.contactbox p.btn {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.contactbox p.btn button {
	width: auto;
	padding: 10px 4%;
	height: auto;
	line-height: 1.4em;
	margin: 15px auto 10px auto;
	font-size: 1.3rem;
}
.contactbox p.btn button + a {
	width: 92%;
}
.contactbox p.btn a {
	background: #2283d8;
	width: 92%;
	padding: 10px 4%;
	height: auto;
	line-height: 1.4em;
	margin: 15px auto;
	font-size: 1.3rem;
}
.contactbox p.btn a:hover {
	background: #2283d8;
}
.contactbox dd input.caljs {
	width: 80%;
}

.contents .freebox .pics {
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-bottom: 15px;
}
.contents .freebox .pics .pic {
	max-width: 100%;
	width: 100%;
	margin: 0 0 10px 0;
}
.contents .freebox .pics.right .pic {
	margin: 0 0 10px 0;
	order: 0;
}
.oneblock {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.oneblock .pic {
	width: 100%;
	margin: 0 0 10px 0;
}
.oneblock .pic.small {
	text-align: center;
}
.oneblock .pic.small img {
	width: auto;
	height: auto;
}
.oneblock .info {
	font-size: 1.4rem;
	padding: 0;
}

.stories .btn {
	width: 95%;
	height: auto;
	line-height: 1.4em;
	padding: 10px 0;
}
.select-wrap {
	width: 90%;
}

.block.faq > p {
	padding: 0 10px 15px 10px;
	text-align: left;
}
.block.faq ul li {
	padding: 15px;
}
.block.faq ul li .question {
	font-size: 1.5rem;
}
.islandtop .block.language > p {
	padding: 0 10px 15px 15px;
	text-align: left;
}
.islandtop .tblang {
	padding: 10px;
}
.islandtop .tblang table th {
	white-space: normal;
}

.islandtop .tbflight {
	padding: 10px;
}
.islandtop .tbflight .lead {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.islandtop .tbflight .lead .pic {
	width: 100%;
	margin: 0 0 10px 0;
}
.islandtop .tbflight h2 {
	margin-bottom: 10px;
	padding-top: 15px;
}
.islandtop .tbflight h2 span {
	font-size: 1.7rem;
}
.islandtop .tbflight h2 span:before, .islandtop .tbflight h2 span:after {
	width: 0;
}
.islandtop .tbflight li {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.islandtop .tbflight li .pic {
	width: 100%;
	margin: 0 0 10px 0;
}

.islandtop .tbflight .btn {
	margin-top: 15px;
	width: 92%;
	height: auto;
	line-height: 1.4em;
	padding: 10px 4%;
	font-size: 1.3rem;
}
.islandtop .tbflight .btn a {
	background: #fff;
}
.islandtop .tbflight .btn a:hover {
	background: #fff;
	color: #2283d8;
}

.islandtop .campaign > div,
.weddingtop .campaign > div,
.divingtop .campaign > div {
	width: 80%;
}
.islandtop .campaign .bx-wrapper .bx-prev,
.islandtop .campaign .bx-wrapper .bx-next {
	background-size: 16px 16px;
}
.islandtop .campaign .bx-wrapper .bx-prev,
.weddingtop .campaign .bx-wrapper .bx-prev,
.divingtop .campaign .bx-wrapper .bx-prev {
	left: -10% !important;
}
.islandtop .campaign .bx-wrapper .bx-next,
.weddingtop .campaign .bx-wrapper .bx-next,
.divingtop .campaign .bx-wrapper .bx-next {
	right: -10% !important;
}
.islandtop .block.optional .whitebg {
	padding-bottom: 0px;
}

.block.ticket p.lead {
	padding: 0 15px;
	text-align: left;
}
.block.ticket ul li > div {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.block.ticket ul li .pic {
	max-width: 100%;
	min-width: 100%;
	margin: 0 0 10px 0;
}
.block.ticket ul li .info {
	padding: 0;
}
.block.ticket ul li .info h4 {
	font-size: 1.7rem;
	margin-bottom: 10px;
}


img.fimg {
	width: 100%;
	height: auto;
}
img.spimg {
	width: 100%;
	height: auto;
}

ul.specialpoints li {
	-webkit-flex-direction: column;
	flex-direction: column;
}
ul.specialpoints li .pic {
	width: 100%;
	margin: 0 0 10px;
}
ul.specialpoints li .info {
	padding: 0;
	font-size: 1.4rem;
}

.specialbtn {
	margin: 15px 10px;
}
.specialbtn a {
	width: 92%;
	height: auto;
	line-height: 1.4em;
	padding: 10px 4%;
	font-size: 1.4em;
	background: #2283d8;
}
.specialbtn a:hover {
	background: #2283d8;
}

.tblwrap {
	width: 100%;
	overflow-x: scroll;
	margin-bottom: 5px;
}

.stafflead {
	text-align: left;
	padding: 0 15px;
}

.spfull {
	width: 100%;
	height: auto;
}

p.mapfull img {
	width: 100%;
	height: auto;
}

.spbr {
	display: block;
}

.block.error404 p {
	padding: 0 0px;
}

.catch_op{
	font-size: 1.8rem;
}

.spnone {
display: none !important;
}

.pcnone{
display:block !important;
}

#androidBrowser_alert{
	position:fixed;
	top:0; left:0;
	height:100%; width:100%;
	background:black;
	opacity:0.80;
}
#androidBrowser_alert div.wrap{
	position:fixed;
	top:50%; left:50%;
	margin-top:-150px; margin-left:-160px;
	background:#313131;
	max-width:320px;
}
#androidBrowser_alert div.con{
	border:solid 1px #fff;
	padding:20px;
	line-height:150%;
	font-size:14px;
	color:#fff;
}
#androidBrowser_alert a.go2chrome{
	display:block;
	text-align:center;
	background:black;
	padding:5px;
}

.weddingtop .block.information .flbox .pic{
	width:100%;
	}


.islandtop .block.islandact ul li .pic_cook {
	min-width: 60%;
	max-width: 60%;
	margin-right: 15px;
	text-align:center;
	margin:auto;
	padding-bottom:10px;
}

.islandtop .block.islandact ul li .pic_cook img{
	width:50%;
}

.onepick img{
	width:100%;
	}

#home .spinfo .block{
	padding-top:10px;
	}

.topop{
	padding-top:0px;
	}

.topori{
	margin-top:-15px !important;
	}

.islandtop .island{
	margin-top:50px;
	}

.islandtop .isbnr_tht img{
	width:100%;
	}

.sns_sp {
	margin-bottom:0px;
	}

.sns_sp li{
	float:left;
	margin:10px auto;
	}

.islandtop .block.vid ul li {
	width: 100%;
}

.islandtop .block.vid ul li iframe{
	width:100%;
	}

.fotorama{
	width: 100%;
}

.top_banner,.top_banner_ul{
	width: 100%;
	flex-wrap: wrap;
}

.top_banner_ul li{
	margin:10px auto;
	width: 80%;
	text-align: center;
}

span.top_message_ico{
	display: inline-block;
	font-size: 100%;
	height: 40px;
	margin-right: 10px;
	vertical-align: middle;
	width: 40px;
	}

.top_message:not(.img){
	padding-left: 50px;
	text-indent: -50px;
	color: #3071b9;
  font-size: 2.8rem;
  font-weight: 200;
  line-height: 1.5;
  margin-bottom: 30px;
  padding-bottom: 15px;
  position: relative;
  vertical-align: middle;
}

/*吉澤とりあえず修正*/
.sp_top_menu{
	margin:3px 0px 6px;
}

/*吉澤とりあえず修正*/
.contents .topvisual{
	margin-top:14px;
}

/*今まで
.sp_top_menu{
	margin:10px 5px 6px;
}*/

.sp_top_menu img{
	width: 100%;
	height: auto;
}

.infowrap{
	padding-bottom:0px;
}

.sp_news{
	text-align: center;
	font-size: 1.7rem;
	font-weight: bold;
	padding-top: 4px;
	margin-top:2px;
}

.top_news{
	padding:3px 10px 10px;
}

.top_news_block{
	margin:5px 5px 10px;
}

.top_news li{
	font-size: 1.4rem;
}

.top_news li:first-child{
	border-top: 1px solid #e9e9e9;
	/*display: flex;*/
}

.sp_tex{
	margin:10px 5px;
	padding: 0 10px 10px
}

.sp_tex .btns p{
	margin:0 5px;
}

.original .btns p{
	margin-left:5px;
	margin-right: 5px;
}

p.sp_tex_head_00{
	text-align: center;
	margin-bottom:20px;
}

p.sp_tex_head{
	text-align: center;
	margin-bottom: 20px;
}

.sp_tex img{
	width:100%;
}

.sp_tex .btns {
	margin: 0 auto;
	-webkit-flex-direction: column;
	flex-direction: column;
}
.sp_tex .btns p {
	width: 95%;
	margin-bottom: 10px;
	font-size: 1.3rem;
	height: 50px;
	border-radius: 50px;
}
.sp_tex .btns p span {
	font-size: 1.6rem;
}
.sp_tex .btns p span.num {
	font-size: 1.8rem;
}
.sp_tex .btns p a {
	display: block;
	color: #f08629;
	background-size: 15px 15px;
	text-decoration: none;
}
.sp_tex .btns p:last-child a {
	color: #fff;
	background: none;
}

header .search {
	background: #fff;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	padding: 0;
}
header .search img {
	width: 43px;
	height: 37px;
}

header .headctc{
	background:#dbdcdc none repeat scroll 0 0;
	height:35px;
}

header .rsrv{
	height: 35px;
}

header .rsrv dl{
	height: 35px;
}

header .rsrv dt:after {
	left: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: #dbdcdc;
	border-left-color: #dbdcdc;
	border-width: 4px;
	margin-top: -4px;
}

.spnav {
	top:85px;
}

.wrap{
	padding-top: 85px;
}

ul.crumbs{
	background: #efefef;
	padding:9px 0 6px 10px;
	text-align: left;
}

ul.crumbs li{
	display: inline;
}

ul.crumbs li.first{
	padding-left: 5px;
}

ul.crumbs li::after{
	content: "＞";
margin-right: 5px;
padding-left: 5px;
}

ul.crumbs li:last-child::after{
	content: "";
margin-right: 0;
padding-left: 0;
}


.tourtag{
	margin-bottom: 4px;
}

.tourtag_lb{
	margin-bottom: 4px;
}

.tourtag_pink{
	margin-bottom: 4px;
}

.tourtag_green{
	margin-bottom: 4px;
}

.tourtag_red{
	margin-bottom: 4px;
}

.optext{
	font-size:1.3rem;
	margin:0px 10px 20px;
	text-align: left;
}

p.topbnr_txt{
	font-size: 1.2rem;
}

p.is_bnr_txt{
	font-size:1.2rem;
}

.onetext_{
  font-size: 1.4rem;
  margin: 10px 20px 20px;
  text-align: left;
}

.info .layoutArea .column p{
	margin-top: 15px;
}

.islandtop .block.info ul li p img{
	max-width: 100%;
}

.menuup{
	border-bottom:1px dotted #cbcbcb;
	padding:5px 0 !important;
}

.spnav .sidefoot.menuup ul{
	border-top: none !important;
	padding:0 !important;
}

.imgovfl{
	overflow-x:scroll;
	width:100%;
}
.anc_area{
    flex-wrap: wrap;
  	-ms-flex-wrap: wrap;
		-webkit-justify-content:center;
    justify-content: center;
}
.anc_btn{
	font-size:1.1rem;
	  width: 48%;
		height:35px;
		line-height: 35px;
		margin: 1%;
}
  .spanc {
       position: relative;
       top: -140px;
       display: block;
    }
/*@media screen end*/
}


@media screen and (max-width: 320px){
	.islandtop .tbflight table th, .islandtop .tbflight table td {
		padding: 8px 8px;
	}
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
	.islandtop .block.island ul li div{
	font-size:1.2rem;
	}
	.islandtop .block.areatop ul li div{
	font-size:1.2rem;
	}
	.head .srch {
	min-width:155px;
	}
	.head .rsrv dt{
	min-width:131px;
	}
	.head .rsrv dd{
	min-width:155px;
	}
	/*スクロール対策*/
	.fix{
	background:#FFF;
	height:100%;
	}
	/*スクロール対策(縦のFIXEDが外れる)
	.side .fix{
	position:relative;
	}
	.main{
	width:1200px;
	}
	*/
}




@media screen and (min-width: 768px) and (max-width: 1080px) {
	.islandtop .block.areatop ul li .btns{
	margin:auto 0 ;
	}
}

/* add 2019.11 */
@media screen and (max-width: 768px){

#home .contents {
	padding: 0 0 10px 0;
}

.contents .topvisual{
	margin: 14px 0 0 0;
}


.head-content_list {
	display: flex;
}

.head-content_list li {
	width: 57.5px;
	height: 55px;
	margin-left: 1px;
}
.head-content_list li a, .head-content_list li div{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
	height: 100%;
	color: #fff;
	padding-top: 12px;
	box-sizing: border-box;
	padding-bottom: 6px;
	font-weight: bold;
}
.head-content_list li a:hover, .head-content_list li div:hover{
	text-decoration: none;
}

.head-content_list li a img {
	width: 19px;
	display: block;
}

.head-content__phone {
	background: #FF8900;
}
.head-content__search{
	background: #327ED8;
}
.head-content__menu{
	background: #193467;
}
.head-content__phone span{
	font-size: 10px;
	font-weight: bold;
}

header .headtop {
	padding: 0 0 1px 0;
}

header .head-logo {
	height: 55px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: 15px;
}

ul.sp-topLink {
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
}
.sp-topLink_item {
	display: block;
	position: relative;
	padding-top: 28.53%;
	margin-bottom: 1px;
}
.sp-topLink_item a{
	display: flex;
	width: 100%;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	justify-content: center;
	flex-direction: column;
	background-size: cover;
	background-position: center;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
	font-family: 'Karla', sans-serif;
	letter-spacing: .05em;
	line-height: 24px;
}
.sp-topLink_item a:hover{
	text-decoration: none;
	opacity: .7;
}
.sp-topLink_item a span{
	font-size: 11px;
	letter-spacing: .05em;
	font-weight: normal;
	line-height: 15px;
	font-family: "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , sans-serif;

}
.sp-topLink_fiji {
	width: 100%;
}

.sp-topLink_newcaledonia {
	width: 100%;
}
.sp-topLink_tahiti {
	width: 100%;
	}
.sp-topLink_cook {
	width: calc( 50% - 1px);
	margin-right: 1px;
	}
.sp-topLink_vanuatu {
	width: calc( 50% - 1px);
	margin-right: 1px;
}
.sp-topLink_easter {
	width: 50%;
}
.sp-topLink_maldives {
	width: 50%;
}

.sp-topLink_fiji a{
	background-image: url(/images/sp/img-fiji.png);
}
.sp-topLink_newcaledonia a{
	background-image: url(/images/sp/img-newc.png);
}
.sp-topLink_tahiti a{
	background-image: url(/images/sp/img-tahiti.png);
}
.sp-topLink_cook a{
	background-image: url(/images/sp/img-cook.png);
}
.sp-topLink_vanuatu a{
	background-image: url(/images/sp/img-vanuatu.png);
}
.sp-topLink_easter a{
	background-image: url(/images/sp/img-easter.png);
}
.sp-topLink_maldives a{
	background-image: url(/images/sp/img-maldives.png);
}
.wrap {
	padding-top: 56px;
}
.contents .topvisual {
	margin: 0;
}
h2.ttl-tours {
	text-align: center;
	color: #193467;
	font-size: 17px;
	letter-spacing: .05em;
	font-weight: bold;
	line-height: 20.5px;
	position: relative;
	padding-top: 19px;
	font-family: 'Karla', sans-serif;
}
h2.ttl-tours span{
	font-size: 11px;
	font-weight: normal;
	display: block;
	letter-spacing: .025em;
	line-height: 15px;
	line-height: 1;
	margin-top: 2px;
}
h2.ttl-tours::before{
	content: "";
	width: 17px;
	height: 14px;
	position: absolute;
	top: 0;
	left: 50%;
	background-image: url(/images/ico/ico-tours.png);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	display: block;
	transform: translate(-50%, 0);
}
h2.ttl-island {
	text-align: center;
	color: #193467;
	font-size: 17px;
	letter-spacing: .05em;
	font-weight: bold;
	line-height: 20.5px;
	position: relative;
	padding-top: 23px;
	font-family: 'Karla', sans-serif;
	margin-bottom: 15px;
}
h2.ttl-island span{
	font-size: 11px;
	font-weight: normal;
	display: block;
	letter-spacing: .025em;
	line-height: 15px;
}
h2.ttl-island::before{
	content: "";
	width: 22px;
	height: 18px;
	position: absolute;
	top: 0;
	left: 50%;
	background-image: url(/images/ico/ico-map_blue.png);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	display: block;
	transform: translate(-50%, 0);
}
h2.ttl-news {
	text-align: center;
	color: #193467;
	font-size: 17px;
	letter-spacing: .05em;
	font-weight: bold;
	line-height: 20.5px;
	position: relative;
	padding-top: 19px;
	font-family: 'Karla', sans-serif;
}
h2.ttl-news span{
	font-size: 11px;
	font-weight: normal;
	display: block;
	letter-spacing: .025em;
	line-height: 15px;
}
h2.ttl-news::before{
	content: "";
	width: 17px;
	height: 14px;
	position: absolute;
	top: 0;
	left: 50%;
	background-image: url(/images/ico/ico-news.png);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	display: block;
	transform: translate(-50%, 0);
}
h2.ttl-campaign {
	text-align: center;
	color: #193467;
	font-size: 17px;
	letter-spacing: .05em;
	font-weight: bold;
	line-height: 20.5px;
	position: relative;
	padding-top: 19px;
	font-family: 'Karla', sans-serif;
}
h2.ttl-campaign span{
	font-size: 11px;
	font-weight: normal;
	display: block;
	letter-spacing: .025em;
	line-height: 15px;
	line-height: 1;
	margin-top: 2px;
}
h2.ttl-campaign::before{
	content: "";
	width: 22px;
	height: 18px;
	position: absolute;
	top: -2px;
	left: 50%;
	background-image: url(/images/ico/ico-campaign.png);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	display: block;
	transform: translate(-50%, 0);
}

.sp-tours.pcnone {
	padding-top: 30px;
	padding-bottom: 10px;
}
.fotorama__wrap {
	padding-bottom: 14px;
}
.top_news_block {
	margin: 14px 0 0 0;
	padding: 37px 30px 20px 30px;
}

.top_news li:first-child {
	border-top: none;
}

.top_news li {
	border-bottom: none;
	font-size: 12px;
	padding: 0 0 30px 0;
}

.top_news a {
	color: #193467;
	text-decoration: underline;
	line-height: 21px;
}

.top_news {
	padding: 30px 0 0 0;
}
#nav_toggle {
	display: block;
	position: relative;
	z-index: 100;
	color: #fff;
	padding: 5px 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

#nav_toggle div {
	height: 20px;
	position: relative;
	width: 24px;
	margin: 0 auto;
}
#nav_toggle span {
	display: block;
	height: 2px;
	background: #fff;
	position: absolute;
	width: 100%;
	left: 0;
	-webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}

#nav_toggle span:nth-child(1) {
	top: 0
}

#nav_toggle span:nth-child(2) {
	top: 8px;
	width: 100%;
}

#nav_toggle span:nth-child(3) {
	top: 16px;
	width: 100%;
}
#nav_toggle.open span:nth-child(1) {
	top: 9px;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

#nav_toggle.open span:nth-child(2) {
	width: 0;
	left: 50%
}

#nav_toggle.open span:nth-child(3) {
	top: 9px;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	width: 100%;
}
.spnav {
	top: 56px;
	height: calc(100vh - 116px);
}
.accordion1 {display: none;}
.accordion2 {display: none;}
.sp-island-top img {
	width: 100%;
}

.islandtop .mapvisual-sp {
	padding-top: 73.5%;
	position: relative;
	overflow-x: scroll;
}

.islandtop .mapvisual-sp .map {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: auto;
}

.islandtop .mapvisual-sp .map img {
	height: 100%;
	width: auto;
}
.sp-island-head {
	background-color: #fff;
	padding-left: 15px;
}
.sp-island-head_wrap{
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 35px;
}

h2.sp-island-ttl {
	display: block;
	width: calc(100vw - 50px - 5px);
	font-size: 20px;
	font-weight: bold;
	letter-spacing: .025em;
	font-family: 'Karla', sans-serif;
	line-height: 1;
	color: #193467;
}
h2.sp-island-ttl span{
	font-size: 11px;
	font-weight: normal;
}

div#island-nav_toggle {
	display: flex;
	width: 100px;
	height: 100%;
	color: #fff;
	background: #193467;
	align-items: center;
	cursor: pointer;
}
.sp-tour {padding-top: 30px;background: #EBEBEB;margin-bottom: 0;padding-bottom: 25px;}
.sp-tour iframe {width: 100%;border: 0;vertical-align: bottom;}

.sp-tour h2 {
	margin-bottom: 15px;
}

.sp-campaign {
	background-color: #fff;
	padding-top: 30px;
	padding-bottom: 28px;
}
.blocks.sp-island-bnrs {
	margin: 0 0 10px 0;
	background: #fff;
	padding: 20px;
}
.islandtop .island {
margin-top: 0;
background-color: #fff;
padding: 30px 0 0 0;
}


.islandtop .island a.hotel {
    display: block;
    border: 10px solid #EBEBEB;
    width: 100%;
    padding: 18px 5px;
    box-sizing: border-box;
    text-align: center;
    margin-top: 20px;
    color: #193467;
    font-size: 11px;
    font-weight: bold;
    position: relative;
    line-height: 1;
}
 .bd5{
	    border: 5px solid #EBEBEB !important;
}
.islandtop .island a.hotel:hover {
    text-decoration: none;
}
.islandtop .island a.hotel::before{
	content: "";
	background-image: url(/images/ico/ico-hotel.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 29px;
	display: block;
	height: 23px;
	margin-bottom: 8px;
	margin: 0 auto 6px;
}
.islandtop .block.island > p {
	font-size: 13px;
	line-height: 24px;
	padding: 0 37.5px 40px;
	margin: 0;
}
.islandtop .block.island ul li, .islandtop .block.island .onlytwo ul li {
	width: 50%;
}

.islandtop .block.island ul {
	background: #ebebeb;
	padding: 10px 5px 0px 5px;
}
.islandtop .block.island ul li h4 {
padding: 13.5px 5px 11.5px;
font-size: 14px;
font-weight: bold;
letter-spacing: .025em;
line-height: 18px;
color: #193467;
}

.islandtop .block.island ul li h4 + p {
	font-size: 11px;
	line-height: 22px;
	padding: 0 10px 17px;
}

.islandtop .block.island ul li .btns {
	border: none;
}
.sp-island_menu{
	display: none;
}
.sp-island_menu {
background: #F7F7F7;
}

.sp-island_menu li a, .sp-island_menu li p {
	border-top: 1px solid #CCCCCC;
	min-height: 50px;
	display: flex;
	font-size: 12px;
	font-weight: bold;
	align-items: center;
	padding: 0 20px;
	box-sizing: border-box;
}
.sp-footer_area01 ul{
	display: flex;
	flex-wrap: wrap;

}
.sp-footer_area01 a{
	color: #fff;
	text-decoration: none;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}
.sp-footer_area01 .inquiry{
	width: calc(50% - 5px);
	height: 90px;
	background: #327ED8;
	display: flex;
	color: #fff;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: bold;
	text-decoration: none;
	margin-right: 10px;
	flex-direction: column;
}
.sp-footer_area01 .inquiry a::before{
	content: "";
	background-image: url(/images/ico/ico-calculator.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 20px;
	display: block;
	height: 23px;
	margin-bottom: 8px;
}
.sp-footer_area01 .reserve{
	width: calc(50% - 5px);
	height: 90px;
	background: #004C98;
	display: flex;
	color: #fff;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: bold;
	text-decoration: none;
}
.sp-footer_area01 .reserve a::before{
	content: "";
	background-image: url(/images/ico/ico-shop.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 29px;
	display: block;
	height: 23px;
	margin-bottom: 8px;
}
.sp-footer_area01 .application{
	margin-top: 10px;
	width: 100%;
	height: 90px;
	background: #1E4676;
	display: flex;
	color: #fff;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: bold;
	text-decoration: none;
}
.sp-footer_area01 .application a::before{
	content: "";
	background-image: url(/images/ico/ico-tour_white.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 28px;
	display: block;
	height: 23px;
	margin-bottom: 8px;
}
.sp-footer_area01 {
	padding: 0 10px 10px 10px;
}
.spnav .sp-nav_area02 ul{
	display: flex;
	flex-wrap: wrap;

}
.spnav .sp-nav_area02 a::after{
	content: none;
}
.spnav .sp-nav_area02 a{
	color: #fff;
	text-decoration: none;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	border-bottom: none;
}
.spnav .sp-nav_area02 .inquiry{
	width: calc(50% - 5px);
	height: 90px;
	background: #327ED8;
	display: flex;
	color: #fff;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: bold;
	text-decoration: none;
	margin-right: 10px;
	flex-direction: column;
}
.spnav .sp-nav_area02 .inquiry a::before{
	content: "";
	background-image: url(/images/ico/ico-calculator.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 20px;
	display: block;
	height: 23px;
	margin-bottom: 8px;
}
.spnav .sp-nav_area02 .reserve{
	width: calc(50% - 5px);
	height: 90px;
	background: #004C98;
	display: flex;
	color: #fff;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: bold;
	text-decoration: none;
}
.spnav .sp-nav_area02 .reserve a::before{
	content: "";
	background-image: url(/images/ico/ico-shop.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 29px;
	display: block;
	height: 23px;
	margin-bottom: 8px;
}
.spnav .sp-nav_area02 .application{
	margin-top: 10px;
	width: 100%;
	height: 90px;
	background: #1E4676;
	display: flex;
	color: #fff;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: bold;
	text-decoration: none;
}
.spnav .sp-nav_area02 .application a::before{
	content: "";
	background-image: url(/images/ico/ico-tour_white.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 28px;
	display: block;
	height: 23px;
	margin-bottom: 8px;
}
.spnav .sp-nav_area02 {
	padding: 10px;
	background: #EBEBEB;
}
.footList02 li a{
	text-decoration: none;
	background: #2E2E2E;
	display: flex;
	align-items: center;
	color: #fff;
	padding: 0 30px;
	font-size: 14px;
	letter-spacing: .025em;
	line-height: 50px;
	border-bottom: 1px solid #fff;
	height: 75px;
	position: relative;
}

.footList03, .snsList{
	display: flex;
	flex-wrap: nowrap;
}
.snsList{
	border-top: 1px solid #ccc;
}
.spnav ul.snsList li a {
	height: 75px;
}
.spnav ul.footList03 li a {
	height: 80px;
}
.footList03 li, .snsList li{
	width: 33.333333%;
}
.footList03 li:nth-child(2n){
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;
}
.snsList li:nth-child(2n){
	border-left: 1px solid #CCCCCC;
	border-right: 1px solid #CCCCCC;
}
.footList03 li a, .snsList li a{
	background: #2E2E2E;
	text-decoration: none;
	display: flex;
	color: #fff;
	padding: 0 30px;
	font-size: 14px;
	letter-spacing: .025em;
	line-height: 50px;
	border-bottom: 1px solid #fff;
	height: 75px;
	text-align: center;
	align-items: center;
	justify-content: center;
}
.snsList li a{
	background: #fff;
}

.footList04 li a{
	background: #2E2E2E;
	text-decoration: none;
	display: flex;
	align-items: center;
	color: #fff;
	padding: 0 30px;
	font-size: 14px;
	letter-spacing: .025em;
	line-height: 50px;
	border-bottom: 1px solid #fff;
	height: 55px;
}
footer{
	padding: 0;
}
.sp-footer_area03 {
	padding: 26px 20px 15px;
}
.sp-footer_area03 p{
	font-size: 12px;
	line-height: 20px;
}

footer .bnrs {
	padding: 0 20px 15px;
	justify-content: space-between;
}

footer .bnrs li {
	margin: 0 0 10px 0px;
	width: calc(50% - 5px);
}

footer .bnrs li img {
	width: 100%;
}
.sp-footer_area04 {
background: #fff;
padding: 15px 20px 20px;
}

.sp-footer_area04 .detail{
	font-size: 12px;
	line-height: 20px;
}

footer .copy {
	text-align: left;
	font-size: 10px;
	padding: 0;
	margin-top: 16px;
	line-height: 20px;
}
.footList03 i.fb {
	display: block;
	width: 29px;
	height: 23.5px;
	background-image: url(/images/ico/ico-facebook.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.footList03 i.inst {
	display: block;
	width: 29px;
	height: 23.5px;
	background-image: url(/images/ico/ico-inst.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.footList03 i.tw {
	display: block;
	width: 29px;
	height: 23px;
	background-image: url(/images/ico/ico-twitter.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.snsList i.fb {
	display: block;
	width: 29px;
	height: 23.5px;
	background-image: url(/images/ico/ico-facebook_bk.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.snsList i.blog {
	display: block;
	width: 29px;
	height: 23px;
	background-image: url(/images/ico/ico-blog_bk.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.snsList i.inst {
	display: block;
	width: 29px;
	height: 23.5px;
	background-image: url(/images/ico/ico-inst_bk.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.snsList i.tw {
	display: block;
	width: 29px;
	height: 23px;
	background-image: url(/images/ico/ico-twitter_bk.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.footList02 li a::after {
content: "";
width: 20px;
height: 20px;
display: block;
position: absolute;
right: 30px;
background-size: contain;
background-position: center;
background-repeat: no-repeat;
top: 50%;
transform: translate(0,-50%);
}
.footList02 li a.company::after {
	background-image: url(/images/ico/ico-map.png);
}
.footList02 li a.flow::after {
	background-image: url(/images/ico/ico-schedule.png);
}
.footList02 li a.ticket::after {
	background-image: url(/images/ico/ico-calendar.png);
}
.footList02 li a.policy::after {
	background-image: url(/images/ico/ico-info.png);
}
.footList02 li a.provision::after {
	background-image: url(/images/ico/ico-contract.png);
}
.footList02 li a.recruit::after {
	background-image: url(/images/ico/ico-man.png);
}
.spnav ul li a, .spnav ul li p {
	height: 50px;
	display: block;
	text-align: left;
	font-size: 12px;
	font-weight: bold;
	padding: 0 20px;
	border-bottom: 1px solid #CCCCCC;
	display: flex;
	align-items: center;
	text-decoration: none;
	color: #193467;
	position: relative;
}
.spnav ul li a::after{
	content: ">";
	position: absolute;
	right: 20px;
}
.spnav ul.snsList li a::after{
	content: none;
}
.spnav ul li p::after{
	content: "+";
	position: absolute;
	right: 20px;
}
.spnav ul li p.is-open::after{

	transform: rotate(45deg);
}
.spnav .accordion1 a, .spnav .accordion1 p{
	background: #fff;
	color: #327ED8;
}

.ac1.is-open {
	background: #327ED8;
	color: #fff;
}

.spnav ul.accordion2 li a{
	background: #fff;
	color: #FF8900;
	padding: 0 65px;
}
p.ac2 {
	background: #fff;
}
.spnav p.ac2.is-open {
	background: #FF8900;
	color: #fff;
}
.sp-navList {
background: #F7F7F7;
}
.spnav .accordion1 li a, .spnav .accordion1 li p{
	position: relative;
	padding-left: 45px;
}
.spnav .accordion2 li a, .spnav .accordion2 li p{
	position: relative;
	padding-left: 65px;
}
.accordion1 a::before, .accordion1 p::before{
	content: "";
	position: absolute;
	width: 6.5px;
	height: 6.5px;
	display: block;
	top: 50%;
	left: 20px;
	transform: translate(0, -50%);
	background-image: url(/images/sp/nav-indent01.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.accordion2 li a::before{
	content: "";
	position: absolute;
	width: 6.5px;
	height: 6.5px;
	display: block;
	top: 50%;
	left: 40px;
	transform: translate(0, -50%);
	background-image: url(/images/sp/nav-indent02.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
p.ac2.is-open::before {
content: "";
position: absolute;
width: 6.5px;
height: 6.5px;
display: block;
top: 50%;
left: 20px;
transform: translate(0, -50%);
background-image: url(/images/sp/nav-indent03.png);
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}

.spnav-search{
	padding: 12px 20px;
	background-color: #EBEBEB;
	border-top: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
}

.spnav-search dl{
	display: flex;
	align-items: center;
	background: #fff;
	padding: 9px 12.5px;
}
.spnav-search dt{
	margin-right: 10px;
}
.spnav-search dd{
	width: 100%;
}
.spnav-search button{
	width: 17.5px;
	height: 17.5px;
	border: none;
	padding: 0;
	background: transparent;
}
.spnav-search button img{
	height: 17.5px;
}
.spnav-search input{
	border: none;
	width: 100%;
	line-height: 20px;
}
.spnav-search input::placeholder {
	text-align: left;
	font-size: 12px;
	color: #7B7B7B;
}
ul.sp-navList.sp-navList02 li {
	width: calc(50% - 1px);
}

ul.sp-navList.sp-navList02 {
	display: flex;
	flex-wrap: wrap;
}

ul.sp-navList.sp-navList02 li:nth-child(2n) {
	border-left: 1px solid #CCCCCC;
}
.sp-nav_area03{
	padding: 30px 10px;
	text-align: center;
	color: #193467;
}
.sp-nav_area03 .overline{
	font-size: 11px;
	line-height: 18.5px;
	letter-spacing: .025em;
}
.sp-nav_area03 .tellink{
	color: #193467;
	font-size: 27.5px;
	line-height: 33px;
	letter-spacing: .025em;
	text-decoration: none;
	font-family: 'Lato', sans-serif;
	font-weight: bold;
}
.sp-nav_area03 .detail{
	font-size: 12px;
}
.sp-nav_area05{
	padding: 30px 10px;
}
.sp-nav_area05 p{
	font-family: 'Karla', sans-serif;
	font-size: 15px;
	line-height: 18px;
}
.sp-nav_area05 p::before{
	content: "";
	width: 10px;
	height: 10px;
	display: inline-block;
	background-image: url(/images/ico/ico-close.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	margin-right: 5px;
}
#island-nav_toggle {
	position: relative;
	justify-content: center;
}

#island-nav_toggle .bar-wrap {
	height: 4.5px;
	position: relative;
	width: 11px;
	margin-right: 5px;
	margin-top: -2.5px;
	font-family: 'Karla', sans-serif;
}
#island-nav_toggle  p{
	font-family: 'Karla', sans-serif;
	letter-spacing: 1px;
	font-size: 12px;
}
#island-nav_toggle span {
	display: block;
	height: 1px;
	background: #fff;
	position: absolute;
	width: 100%;
	left: 0;
	-webkit-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}

.sp-island-head span:nth-child(1) {
	top: 1px;
	display: inline-block;
}
.sp-island-head h2.sp-island-ttl{
	position: relative;
}
.sp-island-head h2.sp-island-ttl span {
	top: 50%;
	display: inline-block;
	position: absolute;
	transform: translate(5px,-50%);
}


.sp-island-head #island-nav_toggle span:nth-child(2) {
	top: 2.25px;
	width: 100%;
	height: 0;
	display: none;
}

.sp-island-head span:nth-child(3) {
	top: 5.5px;
	width: 100%;
}
.sp-island-head.open .bar-wrap span:nth-child(1) {
	top: 3px;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
.sp-island-head.open h2.sp-island-ttl .bar-wrap span{
	transform: rotate(0deg);
}
.sp-island-head.open span:nth-child(3) {
	top: 3px;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	width: 100%;
}
.islandtop .mapvisual-sp::-webkit-scrollbar{
	height: 4px;
}
.islandtop .mapvisual-sp::-webkit-scrollbar-track{
	background: #fff;
	border: none;
}
.islandtop .mapvisual-sp::-webkit-scrollbar-thumb{
	background: #136FAA;
	box-shadow: none;
}
.islandtop .block.island ul li .btns p:first-child a {
	background: url(/images/ico/ico-area.png) top 5px center no-repeat;
	background-size: 17px 17px;
	padding-left: 0px;
}
.islandtop .block.island ul li > div.areaInfo-sp {background: none;width: 100%;}

.islandtop .block.island ul li h4 {
    font-size: 14px;
    color: #193467;
    font-weight: bold;
    letter-spacing: .025em;
    line-height: 18px;
    padding: 16px 10px;
    background: #fff;
}

.islandtop .block.island ul li h4 + p {
    background: #fff;
    font-size: 11px;
    line-height: 22px;
    color: #000;
}

.btn-warp {
    margin-top: 5px;
    display: flex;
    justify-content: space-between;
    font-size: 9px;
    color: #193467;
    text-align: center;
    font-weight: bold;
    position: relative;
}

.area, .hotellist {
    background: #fff;
    width: calc(50% - 2.5px);
}
.islandtop .block.island ul li .area a {
    display: flex;
    width: 100%;
    height: 50px;
    align-items: flex-end;
    justify-content: center;
    position: relative;
    padding: 6px 5px;
    box-sizing: border-box;
    color: #193467;
    font-size: 10px;
}
.islandtop .block.island ul li .area a::before{
    content: "";
    width: 17px;
    height: 17px;
    background-image: url(/images/ico/ico-area.png);
    background-repeat: no-repeat;
    top: 10px;
    left: 50%;
    position: absolute;
    background-size: contain;
    transform: translate(-50%, 0%);
}
.islandtop .block.island ul li .hotellist label {
    display: flex;
    width: 100%;
    height: 50px;
    align-items: flex-end;
    justify-content: center;
    position: relative;
    padding: 6px 5px 9px 5px;
    box-sizing: border-box;
    color: #193467;
    background: none;
    margin: 0;
    line-height: 1.1;
    font-size: 10px;
    font-weight: bold;
}
.islandtop .block.island ul li .hotellist label::before{
    content: "";
    width: 17px;
    height: 17px;
    background-image: url(/images/ico/ico-hotel.png);
    background-repeat: no-repeat;
    top: 10.5px;
    left: 50%;
    position: absolute;
    background-size: contain;
    transform: translate(-50%, 0%);
}
.islandtop .block.island ul.island-hotelList{
    background: #fff;
    margin-top: 5px;
    display: none;
}
.islandtop .block.island ul.island-hotelList li {
    width: 100%;
}

.islandtop .block.island ul.island-hotelList li a {
    color: #1487d8;
    text-decoration: underline;
    background: url(../../images/icon-arrblue.png) 0 2px no-repeat;
    background-size: 15px 15px;
    padding-left: 20px;
}
.islandtop .block.island ul li {
    margin: 0;
}
.islandtop .campaign > div {
    width: 100%;
}
.campaign li p {
    padding: 0;
}

.campaign li p:last-child a {
    display: block;
    max-height: 2.75em;
    overflow: hidden;
}
ul.sp-islandMenu li a::after {
    content: ">";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translate(0, -50%);
}
ul.sp-islandMenu li a,ul.sp-islandMenu li p{
    position: relative;
    width: 100%;
    color: #193467;
    background: transparent;
    font-weight: bold;
}
ul.sp-islandMenu li a:hover{
    text-decoration: none;
}
ul.sp-islandMenu li p::after {
    content: "＋";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translate(0, -50%);
}
ul.sp-islandMenu li p.is-open::after{
	transform: translate(0, -50%) rotate(45deg);
}

ul.accordion2 {
    width: 100%;
}
ul.sp-islandMenu li p.is-open {
    background: #FF8900;
    color: #fff;
}
ul.sp-islandMenu li p.ac2.is-open::before{
    content: none;
}

ul.sp-islandMenu .accordion2{
    background: #fff;
}

ul.sp-islandMenu .accordion2 a{
    color: #FF8900;
    padding: 0 60px;
}
ul.sp-islandMenu .accordion2 li a::after{
	right: 40px;

}
.islandtop .block.island ul li .hotellist .list {
	display: none;
}
.islandtop .block.island ul li .hotellist .list {
	position: absolute;
	height: auto;
	padding: 10px;
	background: none;
	border: none;
	left: 0;
	top: 50px;
	background: #fff;
	text-align: left;
	z-index: 1;
	width: 100%;
	box-sizing: border-box;
}
.islandtop .block.island ul li .hotellist{
	position: unset;
}
.islandtop .block.island ul li .hotellist .list li a {
    min-height: 2em;
}
.scroll-prevent{
	overflow: hidden;
	position: fixed;
	z-index: -1;
	width: 100%;
	height: 100%;
	}
	a.anchor{
		display: block;
		padding-top: 56px;
		margin-top: -56px;
	}
	.tourbtnwht{
		width:100%;
	}
	.weddingtop .block.information > .tourbtnwht a{
		width:100%;
		height: auto;
		line-height: 36px;
	}
}

@media screen and (max-width: 374px){
h2.sp-island-ttl {
	display: block;
	width: calc(100vw);
	font-size: 20px;
	font-weight: bold;
	letter-spacing: .025em;
	font-family: 'Karla', sans-serif;
	line-height: 1;
	color: #193467;
}
.sp-island-head{
	padding-left: 5px;
}
div#island-nav_toggle{
	width: 65px;
}
.islandtop .block.island ul li .hotellist input:checked + .list{
	background: #efefef;
}
.islandtop .block.island ul li .hotellist input {
    /* display: none; */
    width: 100%;
    height: 100%;
    display: block;
    top: 0;
    left: 0;
    opacity: 0;
    position: absolute;
}
}
