﻿

@media screen and (max-width:767px){

/*		Contents
---------------------------------------------------------------------------

	Common（共通部分）

	HOME							[ / ]
	よくあるご質問					[ /faq/ ]

------------------------------------------------------------------------ */


/* ========================================================================
	Common（共通部分）
======================================================================== */
body{
	min-width:320px;
}

.pc{
	display:none;
}

iframe{
	width:100%;
	height:200px;
}


/* ----------------------------------------
	emergency
---------------------------------------- */
#emergency{
	position:fixed;
	top:60px;
	width:100%;
	background:#ffffff;
	text-align:center;
	z-index:10;
}

#emergency a{
	display:flex;
	justify-content:center;
	align-items:center;
	height:50px;
	width:100%;
	padding:0 15px;
	background:#FF0000;
	font-size:1.4rem;
	font-weight:bold;
	color:#ffffff;
	letter-spacing:normal;
	line-height:2.0rem;
	text-decoration:none;
}


/* ----------------------------------------
	header
---------------------------------------- */
header{
	position:fixed;
	top:0;
	width:100%;
	background:#6CDEDB;
	box-shadow:0 0px 6px rgba(0,0,0,0.16);
	z-index:10;
}

header h1,
header .logo{
	padding:10px 15px;
}

header h1 img,
header .logo img{
	width:auto;
	height:40px;
}


/* ----------------------------------------
	menu
---------------------------------------- */
#menu .live,
#menu .btn{
	position:absolute;
	top:10px;
	right:65px;
	cursor:pointer;
}
#menu .btn{ right:15px; }

#menu .menu{
	display:none;
	overflow-y:scroll;
	position:fixed;
	top:60px;
	width:100%;
	height:100%;
	padding:0 0 60px 0;
	background:#ffffff;
	box-shadow:0 0px 6px rgba(0,0,0,0.16);
	text-align:center;
	line-height:1;
}

#menu ul li a{
	display:block;
	text-decoration:none;
}


/* gnavi
---------------------------------------- */
#menu .gnavi{
	text-align:left;
}

#menu .gnavi > li{
	position:relative;
	font-size:1.4rem;
	font-weight:500;
	line-height:3.4rem;
	letter-spacing:normal;
}

#menu .gnavi a{
	position:relative;
	padding:0 15px;
	border-top:1px solid #dddddd;
	color:#222222;
}

#menu .gnavi span{
	position:absolute;
	top:0;
	right:0;
	padding:0 15px;
	border-top:1px solid #dddddd;
	border-left:1px solid #dddddd;
}
#menu .gnavi > li:first-child > a,
#menu .gnavi > li:first-child > span{ border-top:none; }

#menu .gnavi span::before{
	content:"＋";
	position:absolute;
	top:0;
	right:0;
	width:100%;
	height:100%;
	background:#ffffff;
	text-align:center;
	cursor:pointer;
}
#menu .gnavi span.close::before{ content:"－"; }

#menu .gnavi ul{
	display:none;
}

#menu .gnavi ul a{
	padding-left:29px;
}


/* navi
---------------------------------------- */
#menu .navi li{
	float:left;
	width:50%;
}
#menu .navi li:last-child{ width:100%; }

#menu .navi a{
	background:#ffffff;
	border-top:1px solid #dddddd;
	border-right:1px solid #dddddd;
	font-size:1.3rem;
	color:#222222;
	line-height:3.2rem;
	letter-spacing:normal;
}
#menu .navi li:nth-child(even) a{ border-right:none; }

#menu .navi a.tour{
	border-bottom:1px solid #dddddd;
	border-right:none;
}


/* sns
---------------------------------------- */
#menu .sns{
	display:table;
	width:100%;
	table-layout:fixed;
}

#menu .sns li{
	display:table-cell;
}

#menu .sns li a{
	padding:10px 0;
}


/* ----------------------------------------
	main
---------------------------------------- */
main{
	padding:60px 0 0 0;
}
#emergency + header + main{ padding-top:110px; }

main .inner{
	padding:0 15px 10px;
}

main p{
	padding:0 0 30px 0;
	font-size:1.5rem;
	line-height:2.5rem;
}


/* h要素
---------------------------------------- */
main h1{
	padding:40px 0;
	text-align:center;
	font-size:2.4rem;
	font-weight:700;
	line-height:3.4rem;
	letter-spacing:normal;
}

main h2{
	position:relative;
	margin:0 0 20px 0;
	padding:15px 15px 15px 64px;
	background:#6CDEDB;
	border-radius:30px;
	text-align:center;
	font-size:2.0rem;
	font-weight:700;
	color:#ffffff;
	line-height:3.0rem;
	letter-spacing:normal;
}

main h2::before{
	content:"";
	position:absolute;
	top:0;
	left:20px;
	width:34px;
	height:100%;
	background:url(../image/bg_h2.png) no-repeat center;
	background-size:34px auto;
}

main h3{
	margin:0 0 20px 0;
	font-size:2.0rem;
	font-weight:500;
	line-height:3.0rem;
	letter-spacing:normal;
}

main h3 span{
	display:inline-block;
	padding:0 0 5px 0;
	border-bottom:4px solid #6CDEDB;
}

main h4{
	margin:0 0 20px 0;
	font-size:1.8rem;
	font-weight:500;
	line-height:2.8rem;
	letter-spacing:normal;
}

main h4 span{
	display:inline-block;
	padding:4px 20px;
	border:1px solid #6CDEDB;
	border-radius:19px;
}


/* table
---------------------------------------- */
main table{
	margin:0 0 30px 0;
	border-bottom:1px solid #BCBCBC;
	font-size:1.5rem;
	line-height:2.5rem;
	letter-spacing:normal;
}

main table th,
main table td{
	display:block;
	width:auto !important;
	padding:10px 15px;
	border:1px solid #BCBCBC;
	border-bottom:none;
	text-align:center;
}
main table th{ background:#d3f5f4; }


/* ----------------------------------------
	title
---------------------------------------- */
#title{
	padding:50px 0;
	background:url(../image/bg_title.png) no-repeat center;
	background-size:cover;
	text-align:center;
}

#title p{
	padding:0;
}

#title img{
	width:auto;
	height:100px;
}


/* ----------------------------------------
	footer
---------------------------------------- */
footer{
	padding:0 0 73px 0;
	text-align:center;
}

footer .block{
	padding:30px 0 0 0;
	background:url(../image/bg_footer.png) no-repeat center;
	background-size:cover;
}

footer .logo img{
	width:auto;
	height:82px;
}

footer address{
	display:inline-block;
	padding:16px 0 26px;
	text-align:left;
	font-size:1.3rem;
	color:#ffffff;
	line-height:2.1rem;
	letter-spacing:normal;
}

footer small{
	display:block;
	padding:10px 65px 10px 15px;
	font-size:1.0rem;
	line-height:2.0rem;
}

footer .fix{
	position:fixed;
	bottom:0;
	right:0;
	z-index:10;
}

footer .pagetop{
	display:none;
	float:right;
	width:50px;
	cursor:pointer;
}


/* menu
---------------------------------------- */
footer .menu{
	border-bottom:1px solid #dddddd;
}

footer .menu .btn{
	position:relative;
	padding:15px 0 31px;
	font-size:1.5rem;
	line-height:1;
	cursor:pointer;
}

footer .menu .btn::before{
	content:"";
	position:absolute;
	bottom:15px;
	left:50%;
	margin:0 0 0 -10px;
	border-style:solid;
	border-width:6px 10px 0 10px;
	border-color:#222222 transparent transparent transparent;
}

footer .menu .navi,
footer .menu .navi > ul:nth-child(2) ul,
footer .menu .navi > ul:last-child{
	display:none;
}

footer .menu ul li{
	border-top:1px solid #dddddd;
	font-size:1.4rem;
	font-weight:500;
	line-height:3.4rem;
	letter-spacing:normal;
}
footer .menu ul ul li{ font-weight:400; }

footer .menu a,
footer .menu span{
	display:block;
	position:relative;
	color:#222222;
	cursor:pointer;
	text-decoration:none;
}

footer .menu span::before{
	content:"＋";
	position:absolute;
	top:0;
	right:15px;
}
footer .menu span.close::before{ content:"－"; }


/* check
---------------------------------------- */
footer .check .live{
	display:none;
}


/* ---------- weather ---------- */
footer .check .weather a{
	display:table;
	width:100%;
	table-layout:fixed;
	background:#ffffff;
	box-shadow:0 0px 6px rgba(0,0,0,0.16);
	color:#222222;
	text-decoration:none;
}

footer .check dl{
	display:table-cell;
	padding:10px 0;
	line-height:1;
	letter-spacing:normal;
}
footer .check dl:first-child{
	background:#6CDEDB;
}

footer .check dl dt{
	padding:0 0 4px 0;
	font-size:1.5rem;
	font-weight:700;
	color:#ffffff;
	line-height:3.0rem;
}

footer .check dl dt img{
	width:auto;
	height:30px;
}

footer .check dl dd{
	font-size:1.2rem;
}
footer .check dl:first-child dd{ font-weight:500; }

footer .check dl dd span{
	font-size:1.4rem;
}

footer .check dl dd span.bold{
	padding:0 0.5em 0 0;
	font-size:1.6rem;
	font-weight:700;
}
footer .check dl:first-child dd span.bold{ padding:0 0 0 0.5em; }


/* ========================================================================
	HOME							[ / ]
======================================================================== */
#home .inner,
#home .widget_btn{
	position:relative;
	padding-bottom:0;
}

#home h2{
	margin:0;
	padding:0;
	background:none;
	color:#222222;
	line-height:1;
}
#home h2::before{ content:none; }

#home h2 span{
	color:#6CDEDB;
}

#home h2 span.en{
	display:block;
	padding:10px 0 0 0;
	font-family:'Inter', sans-serif;
	font-size:1.2rem;
	color:#A88B54;
	line-height:1;
}


/* ----------------------------------------
	key
---------------------------------------- */
#home .key{
	position:relative;
	height:380px;
	background:url(../image/bg_key.png) no-repeat center;
	background-size:cover;
}

#home .key img{
	position:absolute;
	top:50%;
	left:50%;
	-webkit-transform:translate(-50%, -50%); /* Android */
	transform:translate(-50%, -50%);
	margin:-39px 0 0 0;
	padding:0 15px;
}

#home .key a{
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	padding:15px 103px 15px 15px;
	background:rgba(108,222,219,0.95);
	font-size:1.4rem;
	color:#222222;
	line-height:2.4rem;
	letter-spacing:normal;
	text-decoration:none;
}

#home .key a::before{
	content:"";
	position:absolute;
	top:0;
	right:15px;
	width:73px;
	height:100%;
	background:url(../image/arrow.png) no-repeat center;
	background-size:73px 9px;
}

#home .key time{
	display:block;
	font-family:'Inter', sans-serif;
	font-weight:700;
}


/* ----------------------------------------
	check
---------------------------------------- */
#home .check{
	padding:40px 0;
}

#home .check h2{
	padding:0 0 20px 0;
}

#home .check h2 img{
	width:282px;
}

#home .check .inner > p{
	font-size:1.4rem;
	line-height:2.4rem;
	letter-spacing:normal;
}

#home .check h3{
	display:inline-block;
	margin:0 0 18px 0;
	padding:0 0 0 42px;
	background:url(../image/icon_check.png) no-repeat left center;
	background-size:auto 28px;
	text-align:center;
	font-size:1.8rem;
	font-weight:700;
	line-height:2.8rem;
}


/* weather
---------------------------------------- */
#home .check .weather{
	padding:0 0 30px 0;
	text-align:center;
}

#home .check .weather .box{
	padding:20px 0;
	background:#ffffff;
	border:4px solid #6CDEDB;
	border-radius:13px;
}

#home .check .weather p{
	padding:0 15px 10px;
	font-size:1.8rem;
	font-weight:700;
	line-height:1;
}
#home .check .weather p:last-child{
	line-height:7.9rem;
}

#home .check .weather p img{
	margin:0 10px 0 0;
}

#home .check .weather p > span{
	display:inline-block;
	padding:10px 0 0 0;
	vertical-align:top;
	font-size:1.5rem;
	font-weight:400;
}

#home .check .weather p time span{
	display:inline-block;
	padding:0 0 0 10px;
	vertical-align:sub;
	font-size:3.0rem;
}

#home .check .weather ul{
	display:table;
	position:relative;
	width:100%;
	table-layout:fixed;
	padding:20px 5px 0;
	border-top:1px dashed #6CDEDB;
	text-align:center;
}

#home .check .weather ul li{
	display:table-cell;
	position:relative;
	padding:0 10px;
	border-left:1px dashed #6CDEDB;
	font-size:1.2rem;
	line-height:2.0rem;
	letter-spacing:normal;
}
#home .check .weather ul li:first-child{ border:none; }

#home .check .weather ul li:first-child::before,
#home .check .weather ul li:last-child::before{
	content:"";
	position:absolute;
	top:-21px;
	left:-5px;
	width:15px;
	height:1px;
	background:#ffffff;
}
#home .check .weather ul li:last-child::before{
	left:auto;
	right:-5px;
}

#home .check .weather ul li img{
	display:block;
	margin:8px auto;
}


/* ---------- winter-stop ---------- */
#home .check .weather .winter-stop{
	padding:15px;
	border:4px solid #6CDEDB;
	border-radius:13px;
}

#home .check .weather .winter-stop img{
	width:100%;
}


/* live
---------------------------------------- */
#home .check .live{
	position:relative;
	text-align:center;
}


/* ---------- tv ---------- */
#home .check .live .tv{
	position:relative;
	margin:0 0 20px 0;
}

#home .check .live .tv > img{
	display:block;
	margin:0 auto;
}

#home .check .live .tv a,
#home .check .live .tv span{
	position:absolute;
	top:28px;
	left:50%;
	margin:0 0 0 -204px;
}


/* ----------------------------------------
	news
---------------------------------------- */
#home .news{
	overflow:hidden;
	padding:40px 0;
	background:#f8f5e9;
}

#home .news h2{
	padding:0 0 20px 0;
}

#home .news h2 img{
	width:113px;
}


/* widget_btn
---------------------------------------- */
#home .news .widget_btn a{
	background:#ffffff;
	color:#222222;
}


/* ----------------------------------------
	about
---------------------------------------- */
#home .about{
	overflow:hidden;
	position:relative;
	padding:40px 0 80px 15px;
	background:-moz-linear-gradient(left, rgba(240,252,252,1) 50%, rgba(255,255,255,1) 50%);
	background:-webkit-linear-gradient(left, rgba(240,252,252,1) 50%, rgba(255,255,255,1) 50%);
	background:linear-gradient(to right, rgba(240,252,252,1) 50%, rgba(255,255,255,1) 50%);
}

#home .about::before{
	content:"";
	position:absolute;
	top:0;
	left:15px;
	width:50%;
	height:100%;
	margin:0 -1px 0 0;
	background:#ffffff;
	border-bottom-left-radius:80px;
}

#home .about h2{
	padding:0 0 20px 0;
	text-align:left;
	font-size:2.4rem;
	line-height:3.4rem;
}

#home .about figure{
	padding:0 0 30px 0;
	text-align:center;
}

#home .about p{
	font-weight:500;
}


/* ----------------------------------------
	enjoy
---------------------------------------- */
#home .enjoy{
	overflow:hidden;
	position:relative;
	background:-moz-linear-gradient(left, rgba(240,252,252,1) 50%, rgba(255,255,255,1) 50%);
	background:-webkit-linear-gradient(left, rgba(240,252,252,1) 50%, rgba(255,255,255,1) 50%);
	background:linear-gradient(to right, rgba(240,252,252,1) 50%, rgba(255,255,255,1) 50%);
}

#home .enjoy h2{
	position:absolute;
	top:40px;
	left:15px;
	text-align:left;
	font-size:2.4rem;
	line-height:3.4rem;
	z-index:1;
}

#home .enjoy > div{
	position:relative;
	padding:80px 15px 80px 0;
}
#home .enjoy > div:nth-of-type(1){ padding-top:150px; }
#home .enjoy > div:nth-of-type(even){ padding:80px 0 80px 15px; }

#home .enjoy > div::before{
	content:"";
	position:absolute;
	top:0;
	right:15px;
	width:50%;
	height:100%;
	margin:0 0 0 -1px;
	background:#F0FCFC;
	border-top-right-radius:80px;
	border-bottom-right-radius:80px;
}
#home .enjoy > div:nth-of-type(even)::before{
	right:auto;
	left:15px;
	margin:0 -1px 0 0;
	background:#ffffff;
	border-top-left-radius:80px;
	border-top-right-radius:0;
	border-bottom-left-radius:80px;
	border-bottom-right-radius:0;
}

#home .enjoy > div::after{
	content:"";
	position:absolute;
	bottom:-38px;
	right:0;
	width:125px;
	height:75px;
	background:url(../image/bg_enjoy01.png) no-repeat;
	background-size:100%;
}
#home .enjoy > div:nth-of-type(2)::after{
	left:15px;
	background-image:url(../image/bg_enjoy02.png);
}
#home .enjoy > div:nth-of-type(3)::after{ background-image:url(../image/bg_enjoy03.png); }
#home .enjoy > div:nth-of-type(4)::after{ content:none; }

#home .enjoy h3{
	margin:-20px 0 20px 0;
	text-align:right;
	z-index:1;
}
#home .enjoy > div:nth-of-type(1) h3{ margin-top:-80px; }
#home .enjoy > div:nth-of-type(2) h3,
#home .enjoy > div:nth-of-type(4) h3{ text-align:left; }

#home .enjoy p{
	font-weight:500;
	z-index:1;
}


/* photo
---------------------------------------- */
#home .enjoy .photo{
	position:relative;
	padding:0 30px 0 0;
}
#home .enjoy > div:nth-of-type(2) .photo,
#home .enjoy > div:nth-of-type(4) .photo{ padding:0 0 0 30px; }

#home .enjoy .photo img{
	border-top-right-radius:60px;
	border-bottom-right-radius:60px;
}
#home .enjoy > div:nth-of-type(2) .photo img,
#home .enjoy > div:nth-of-type(4) .photo img{
	border-top-left-radius:60px;
	border-top-right-radius:0;
	border-bottom-left-radius:60px;
	border-bottom-right-radius:0;
}


/* ----------------------------------------
	photo-contest / haiku-contest
---------------------------------------- */
#home .photo-contest,
#home .haiku-contest{
	overflow:hidden;
	position:relative;
	padding:80px 0;
	background:-moz-linear-gradient(left, rgba(240,252,252,1) 50%, rgba(255,255,255,1) 50%);
	background:-webkit-linear-gradient(left, rgba(240,252,252,1) 50%, rgba(255,255,255,1) 50%);
	background:linear-gradient(to right, rgba(240,252,252,1) 50%, rgba(255,255,255,1) 50%);
}

#home .photo-contest::before{
	content:"";
	position:absolute;
	top:0;
	right:15px;
	width:50%;
	height:100%;
	margin:0 0 0 -1px;
	background:#F0FCFC;
	border-top-right-radius:80px;
	border-bottom-right-radius:80px;
}

#home .haiku-contest::before{
	content:"";
	position:absolute;
	top:0;
	left:15px;
	width:50%;
	height:100%;
	margin:0 -1px 0 0;
	background:#ffffff;
	border-top-left-radius:80px;
}

#home .photo-contest h2,
#home .haiku-contest h2{
	padding:0 30px 20px 15px;
}
#home .photo-contest h2 img{ width:197px; }
#home .haiku-contest h2 img{ width:192px; }

#home .photo-contest ul{
	position:relative;
	height:640px;
	margin:0 0 30px 0;
}

#home .photo-contest ul li{
	position:absolute;
	top:0;
	left:0;
	width:25%;
	height:64px;
}

#home .photo-contest ul li:nth-child(8){
	top:64px;
}
#home .photo-contest ul li:nth-child(3){
	top:128px;
}
#home .photo-contest ul li:nth-child(4),
#home .photo-contest ul li:nth-child(5){
	top:256px;
}
#home .photo-contest ul li:nth-child(9),
#home .photo-contest ul li:nth-child(14){
	top:320px;
}
#home .photo-contest ul li:nth-child(10),
#home .photo-contest ul li:nth-child(11){
	top:448px;
}
#home .photo-contest ul li:nth-child(12),
#home .photo-contest ul li:nth-child(13){
	top:512px;
}
#home .photo-contest ul li:nth-child(15),
#home .photo-contest ul li:nth-child(16){
	top:576px;
}

#home .photo-contest ul li:nth-child(2),
#home .photo-contest ul li:nth-child(5),
#home .photo-contest ul li:nth-child(11),
#home .photo-contest ul li:nth-child(13){
	left:25%;
}
#home .photo-contest ul li:nth-child(6),
#home .photo-contest ul li:nth-child(8),
#home .photo-contest ul li:nth-child(14),
#home .photo-contest ul li:nth-child(15){
	left:50%;
}
#home .photo-contest ul li:nth-child(7),
#home .photo-contest ul li:nth-child(16){
	left:75%;
}

#home .photo-contest ul li:nth-child(3),
#home .photo-contest ul li:nth-child(8),
#home .photo-contest ul li:nth-child(9),
#home .photo-contest ul li:nth-child(14){
	width:50%;
}

#home .photo-contest ul li:nth-child(1),
#home .photo-contest ul li:nth-child(2),
#home .photo-contest ul li:nth-child(3),
#home .photo-contest ul li:nth-child(9),
#home .photo-contest ul li:nth-child(12),
#home .photo-contest ul li:nth-child(13){
	height:128px;
}
#home .photo-contest ul li:nth-child(8),
#home .photo-contest ul li:nth-child(14){
	height:256px;
}


/* lead
---------------------------------------- */
#home .haiku-contest .lead{
	position:relative;
	margin:0 0 30px 0;
	padding:80px 0;
	background:url(../image/bg_haiku-contest.png) no-repeat center;
	background-size:cover;
	text-align:center;
}


/* clearfix
---------------------------------------- */
#home .photo-contest .clearfix p,
#home .haiku-contest .clearfix p{
	position:relative;
	padding:0 30px 30px 15px;
	font-size:1.4rem;
	line-height:2.4rem;
	letter-spacing:normal;
}
#home .haiku-contest .clearfix p{
	padding:0 15px 30px 30px;
}


/* widget_btn
---------------------------------------- */
#home .photo-contest .widget_btn{
	padding:0 30px 0 15px;
}

#home .haiku-contest .widget_btn{
	padding:0 15px 0 30px;
}


/* ========================================================================
	よくあるご質問					[ /faq/ ]
======================================================================== */
#faq dl{
	padding:0 0 20px 0;
	font-size:1.5rem;
	line-height:2.5rem;
}

#faq dl dt{
	position:relative;
	margin:0 0 10px 0;
	padding:10px 43px 10px 15px;
	background:#F0F0F0;
	border-left:10px solid #6CDEDB;
	border-radius:5px;
	cursor:pointer;
}

#faq dl dt::before{
	content:"";
	position:absolute;
	top:0;
	right:15px;
	width:18px;
	height:100%;
	background:url(../image/icon_open.png) no-repeat center;
	background-size:18px; 
}
#faq dl dt.close::before{ background-image:url(../image/icon_close.png); }

#faq dl dd{
	display:none;
	padding:0 0 0 25px;
}

#faq dl dd p{
	padding:0 0 20px 0;
}
#faq dl dd:last-child p{ padding-bottom:10px; }


}


@media screen and (max-width:500px){
#home .check .live .tv a,
#home .check .live .tv span{
	top:9.3%;
	left:0;
	margin:0;
	padding:0 26.9% 0 5.6%;
}
}