@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: 30px;
	height: 30px;
}

.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: -28px;
}
.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 {
	-webkit-flex-direction: column;
	flex-direction: column;
}
.islandtop .mapvisual .map {
	width: 100%;
}
.islandtop .mapvisual .map img {
	width: 100%;
	height: auto;
}
.islandtop .mapvisual .campbox {
	width: 100%;
	padding: 16px 0;
}
.islandtop .mapvisual .campbox .slick-prev {
	top: -13px;
}
.islandtop .mapvisual .campbox .slick-next {
	bottom: -13px;
}
.islandtop .mapvisual .campbox ul li div p span.tag span {
	font-size: 1.2rem;
}
.islandtop .mapvisual .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 {
	height: auto;
	padding: 10px;
	background: none;
	border: none;
}


.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.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;
}
.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 0;
	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%;
}

/*@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 ;
	}
}
