﻿@charset "utf-8";

/*
  File Name   : sp.css
  Description : CSS
*/


/* SPLayout ******************************************************************************************* */

/* Common
============================================================ */


/* Home
============================================================ */
/*add 20200803*/
body{
	margin: 0;
	font-family: 'Noto Serif JP';
}

.cc-invisible .cc-revoke.cc-bottom,
.cc-invisible + .cc-revoke.cc-bottom {
    -webkit-transform: translateY(4em) !important;
    transform: translateY(4em) !important;
}

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


.kv-slide-embedWrap {
	width: 100%;
	height: auto;
	aspect-ratio: 9 / 16;
	margin-top: 80px;
	position: relative;
	z-index: -1;
}

.kv-slide-embedWrap video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: relative;
	z-index: -2;
}

.kv-slide-ytWrap {
	width: 100%;
	height: auto;
	aspect-ratio: 9 / 16;
	margin-top: 80px;
	position: relative;
	z-index: -1;
}
.inline-YTPlayer {
	display: none;
}

#player {
	display: none;
}

.kv-slide-yt {
	width: 100%;
	height: auto;
	aspect-ratio: 9 / 16;
}

.kv-slide-yt iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 9 / 16;
}

.kv-slide {
    position: relative;
    height: 750px;
    overflow: hidden;
    margin: 0 auto;
    z-index: 1;
    margin-top: 100px;
}

	h1.main-title {
		font-size: 50px;
	}

.slide {
  position: relative;
  width: 100%;
  height: 400px;
  overflow: hidden;
}

.slide-image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  animation: slider-1 24s linear infinite;
}

.slide-image::before {
	content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-color: rgb(0 0 0 / 50%);
    z-index: 999;
}

.slide-image:nth-child(1) {
  background-image: url("../images/top/main-kv1.png");
  animation-delay: -2s;
}

.slide-image:nth-child(2) {
  background-image: url("../images/top/main-kv2.png");
  animation-delay: 6s;
}

.slide-image:nth-child(3) {
  background-image: url("../images/top/main-kv3.png");
  animation-delay: 14s;
}


.slide-image:nth-child(4) {
  background-image: url("../images/top/main-kv4.png");
  animation-delay: 22s;
}


.slide-image:nth-child(5) {
  background-image: url("../images/top/main-kv5.png");
  animation-delay: 30s;
}
	
}

@keyframes slider-1 {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  4.16% {
    opacity: 1;
  }
  33.33% {
    opacity: 1;
  }
  41.66% {
    opacity: 0;
    transform: scale(1.2);
  }
  100% {
    opacity: 0;
  }
}

@media screen and (max-width: 480px) {
	.contents {
		width: 100%;
		margin: 0 auto;
	}

	.contents ul {
		display: block;
		width: 90%;
		margin: 0 auto;
	}

	.contents li {
		height: 250px;
		position: relative;
		width: 100%;
		margin-bottom: 30px;
	}

	.contents li:first-child {
		background: url("../images/top/sp_bg01.png") no-repeat;
		background-size: cover;
	}

	.contents li:nth-child(2) {
		background: url("../images/top/sp_bg02.png") no-repeat;
		background-size: cover;
	}

	.contents li:last-child {
		background: url("../images/top/sp_bg03.png") no-repeat;
		background-size: cover;
	}

	.contents h2 {
		margin-bottom: 5px;
		font-size: 27px;
		line-height: 35px;
	}

	.contents p {
	    margin-bottom: 5px;
		font-size: 13px;
		line-height: 20px;
	}

.contents-top {
	width: 100%;
	position: relative;
}

.box-inner {
    position: absolute;
    bottom: 0;
    padding: 20px;
    width: 100%;
}

.box-inner .ta_right {
	float: right;
}

.box-inner a.btn {
    font-size: 15px;
    padding: 7px 35px 7px 0;
    font-weight: 700;
    color: #fff;
    display: inline-block;
    transition: .5s;
    border-bottom: 1px solid #fff;
    border-radius: inherit;
}

.box-inner a.btn::before {
	border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    top: auto;
    right: 23px;
    margin-top: 8px;
}

.box-inner a.btn:hover {
    opacity: 0.7;
}

.p-top-terminalBtn {
	margin-top: 50px;
	margin-bottom: 50px;
	padding: 15px 40px 15px 25px;
	font-size: 15px;
	border-radius: 15px;
}

.p-top-terminalBtn::after {
	right: 15px;
}
	
	
	.news {
		box-sizing: border-box;
		margin: 0 auto;
		width: 100%;
	}
	
	.news-inner {
		display: block;
		padding: 20px 25px 35px;
		overflow: hidden;
	}

	.news-inner h3 {
		font-size: 18px;
	}

	.news-inner .date {
		margin-left: 25px;
	}

	.news-inner .news-text {
		margin-left: 0;
		width: 100%;
	}

	.news-inner h3 {
		font-size: 18px;
	}
	
	.news-inner .date {
	    margin-left: 0;
		margin-top: 10px;
		font-size: 13px;
	}
	
	.news-inner a.btn {
        font-size: 14px;
		display: inline-block;
		position: relative;
		transition: .5s;
		margin-top: 10px;
		float: right;
	}

.news-inner a.btn:hover {
	opacity: 0.7;
	transition: .5s;
}

	.menu-btn {
		width: 85%;
		margin: 60px auto;
	}
	
	.menu-btn ul {
		flex-wrap: wrap;
		justify-content: space-evenly;
	}

	.menu-btn li {
		width: 32%;
	}

	.topics_textarea {
		width: 85%;
	}

	.topics_textarea h2 {
		font-size: 35px;
	}

	a.topics-btn {
    padding: 7px 10px;
    font-size: 18px;
    font-weight: 600;
    color: #303338;
    transition: .5s;
    border: 1px solid #1E1E1E;
    text-align: center;
    margin: 60px auto 0;
    display: block;
    width: 200px;
    border-radius: 30px;
    position: relative;
}

a.topics-btn:hover {
	opacity: 0.7;
	transition: .5s;
}

a.topics-btn::before {
	content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-top: solid 1px #303338;
    border-right: solid 1px #303338;
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -4px;
    transform: rotate(45deg);
}

.weather {
	margin: 100px 0 0;
}

	.weather-inner {
		width: 100%;
	}

.weather-inner ul {
	display: flex;
	justify-content: space-between;
	margin: 30px 0;
}

	.weather-inner ul li {
		width: 30%;
	}
	
}


/* 検索ブロック
----------------------------------------------------------- */
@media screen and (max-width: 767px) {
.search-block {
    width: 1000px;
    margin: 60px auto 0;
	display: flex;
    align-items: center;
	justify-content: center;
}

select.aria,
select.theme,
select.day{
    width: 25%;
    font-size: 16px;
    color: #707070;
    text-align: center;
    padding: 10px;
	border: 1px solid #303338;
    border-radius: 10px;
	margin-right: 20px;
}

input.search-btn {
    background: #0DC493;
    color: #fff;
    padding: 10px 20px;
    font-size: 16px;
    border-radius: 10px;
    border: none;
}

	.select-box_inner {
		width: 100%;
		margin: 30px auto 0;
	}

	.select-box_inner ul {
		display: block;
		text-align: center;
	}

	.select-box_inner ul li:first-child{
		width: 70%;
		margin: 0 auto 10px;
	}
	
	.select-box_inner ul li:nth-child(2n){
		width: 100%;
		margin-right: 0;
	}

	.select-box_inner ul li:nth-child(3n) {
		width: 100%;
	}
}

/* ピックアップコンテンツ　トップページ
----------------------------------------------------------- */
@media screen and (max-width: 480px) {
	/* simplebar用 */
	.simplebar-track {
		width: 80%;
		margin: 0 auto;
	}

	.flex ul li{
		width:220px;
		margin: 0 25px 0 0;
		letter-spacing: 0;
	}

	.flex ul li:first-child{
		margin-left: 40px;
	}

	.flex ul li:last-child{
		margin-right: 40px;
	}

}

@media screen and (max-width: 480px) {
	.kv-slide {
		height: 500px;
		margin-inline: auto;
		margin-top: 80px;
	}

	.slide {
		position: relative;
		width: 100%;
		height: 400px;
		overflow: hidden;
	}
	
}


@media screen and (max-width: 767px) {
	/* 島の紹介一覧ページ */
	.island-box {
		display: block;
		padding-top: 60px;
	}

	.island-box01 {
		width: 85%;
		margin: 0 auto;
	}

	.island-box02 {
		width: 85%;
		height: 270px;
		border-top-right-radius: 0;
		border-bottom-right-radius: 15px;
		border-bottom-left-radius: 15px;
		margin: 0 auto;
		padding-top: 15px;
		display: block;
	}

	.island-box_inner {
		width: 85%;
		margin: 0 auto;
	}

	h2.island {
        font-size: 25px;
		margin-bottom: 5px;
	}

	a.island-btn {
		margin-top: 15px;
	}


/* 島の紹介詳細ページ */

	.heading-img {
		height: 150px;
	}

	.wave {
		margin-top: 80px;
		display: table;
		width: 100%;
	}

	.mukaishima-bnr,
	.hakatajima-bnr,
	.yumeshima-bnr,
	.ikuchijima-bnr,
	.oshima-bnr,
	.onomichi-bnr,
	.omishima-bnr,
	.innoshima-bnr,
	.imabari-bnr {
		margin-top: 80px;
	}

	.wave h1.title {
		font-size: 30px;
		letter-spacing: 0;
		padding-top: 0;
		display: table-cell;
		vertical-align: middle;
	}
	
	.island-img {
		width: 85%;
		margin: 0 auto 30px;
	}

	p.island-text {
	    width: 85%;
		margin: 0 auto 60px;
	}

	.flex-2box{
		display: block;
	}

	.flex-2box li{
		width: 85%;
		margin: 0 auto 25px;
	}

.flex-2box li.vertical img {
    width: 320px;
}

	.island-btn.inner1000 {
		margin-top: 40px;
	}

	.flex-box {
        justify-content: space-evenly;
	}

	.flex-box .island-name,
	.flex-box .island-name:nth-child(5){
		width: 160px;
		margin-right: 0;
		margin-bottom: 15px;
	}
	
	.flex-box .island-name p {
	    font-size: 15px;
	}

	.flex-box .island-name2 {
		width: 200px;
		margin-bottom: 0;
	}

	.flex-box .island-name2 p {
		font-size: 15px;
	}

.inner-btn {
    display: flex;
    justify-content: space-around;
}

a.map-btn {
    font-size: 17px;
    color: #EA7016;
    background: #fff;
    border: 1px solid #EA7016;
    padding: 8px 0;
    width: 200px;
    display: block;
    border-radius: 30px;
	cursor:pointer;
}

a.map-btn:hover {
    color: #fff;
    background: #EA7016;
	transition: .5s;
}

a.detail-btn {
    font-size: 17px;
    color: #0DC493;
    background: #fff;
    border: 1px solid #0DC493;
    padding: 8px 0;
    width: 200px;
    display: block;
    border-radius: 30px;
	cursor:pointer;
}

	.island-btn h2.title {
	    font-size: 25px;
		padding: 0;
	}

	h3.islandinfo-title {
		font-size: 18px;
		margin-bottom: 20px;
	}

	.island-info{
		width: 85%;
	}

	.island-info th{
	    padding: 15px 0 15px 20px;
		width: 150px;
	}

	.island-info td{
	    padding: 15px 20px;
	}

	h4.island-subtitle {
        font-size: 18px;
		width: 85%;
		margin: 0 auto 10px;
	}

	h5.island-subname {
        font-size: 15px;
		margin: 25px auto 5px;
		width: 85%;
	}

	h3.table-title {
        font-size: 18px;
		width: 85%;
		margin: 0 auto 15px;
	}

	.table-list{
		width: 85%;
		margin: 0 auto;
	}

	.table-list td{
	    padding: 15px 20px;
	}
}


@media screen and (max-width: 767px) {
/* スポット一覧ページ */
	.mymap {
		width: 85%;
		margin: 0 auto;
	}

	.mymap iframe {
		width: 100%;
	}

	.spot-block {
		padding: 50px 0 20px;
	}

	.spot-block-inner {
		width: 85%;
	}
	
	.spot-block-inner ul li {
		width: 48%;
		margin-bottom: 30px;
	}

	.spot-namebox {
		margin-top: 5px;
		text-align: left;
	}

	.spot-namebox h4.name {
		font-size: 13px;
	}

/* スポット詳細ページ */
	h1.spot-title {
        font-size: 23px;
		width: 85%;
		margin: 30px auto;
	}

/* スライダー共通のスタイル */
.slider_container * {
  box-sizing: border-box;
}
.slider_container img {
  max-width: 100%;
}

/* メインスライダーのスタイル */
#slider {
  margin-bottom: 50px; 
}
#slider .slick-slide {
	margin: 0 30px;
	width: 700px;
}

/* サムネイルスライダーのスタイル */
	#thumbs {
		width: 85%;
	}

	#thumbs .slick-slide {
		margin: 0 5px;
		width: 32%!important;
	}

	.spot_detail {
        width: 85%;
		margin: 40px auto;
	}

h3.spot_detail-title {
    font-size: 25px;
    color: #0DAFC4;
    font-weight: 700;
	margin-bottom: 25px;
}

h3.spot_detail-title::after {
	content: '';
    border-bottom: solid 3px;
    width: 100px;
    text-align: center;
    display: block;
    padding-bottom: 10px;
}

	p.spot_detail-text {
        line-height: 20px;
		font-size: 13px;
	}

	h3.info-title {
        font-size: 20px;
		margin-bottom: 20px;
	}

	.informaition{
		width: 85%;
	}

	.informaition tr{
		font-size: 13px;
	}

	.informaition th{
		padding: 20px 15px;
		width: 20%;
	}
	
	.spot-map {
		margin: 40px auto 50px;
		width: 85%;
	}
	
	.spot-map iframe {
		width: 100%;
	}

	.near-spotbox {
		width: 85%;
	}

	.near-spotbox .title01 {
		font-size: 18px;
		margin-bottom: 25px;
	}

	.near-spotbox ul li {
		width: 46%;
		margin-bottom: 30px;
	}
	
}

@media screen and (max-width: 767px) {
/* レンタサイクルページ */
	h2.title {
        font-size: 25px;
	}

	.main-rental {
		margin: 35px auto 60px;
		width: 85%;
	}

	section.rentalbike {
		width: 85%;
	}

	.bike-list {
		margin: 20px 0 0;
	}

	.bike-list ul {
		display: block;
	}

	.bike-list ul li {
		width: 100%;
		margin: 0 0 40px;
	}
	
	.bike-list ul li th {
		width: 40%;
	}

	h2.m-title {
		font-size: 22px;
		margin-bottom: 20px;
	}

	.sec_qa{
		padding: 25px 0;
	}
	
	.wrap_qa{
		width: 85%;
		margin: 0 auto;
	}
	
	.list_qa .box_q label{
		padding: 17px 55px;
		font-size: 15px;
	}
	
	.list_qa .box_q label::before{
	    font-size: 23px;
		top: 50%;
		right: 15px;
		margin-top: -20px;
	}
	
	.list_qa .box_q label::after{
		position: absolute;
		bottom: 27px;
		top: 50%;
		right: 15px;
		margin-top: -5px;
	}

	.list_qa .box_a p{
		font-size: 14px;
	}
	
	.list_qa .box_a > *:first-child::before{
	    top: 21px;
		left: 19px;
		font-size: 23px;
	}
	
	.list_qa .box_a *{
	    font-size: 14px;
	}
	
	.list_qa input:checked ~ .box_a{
		padding: 20px 20px 20px 55px;
	}

	.img-box {
		width: 85%;
		margin: 30px auto;
	}

	.Reserve-btn {
		padding: 30px 0 50px;
	}
	
	p.pay-text {
		width: 85%;
	}

	.googlemap {
		width: 85%;
		margin: 30px auto;
	}

	h4.chapter_title {
		font-size: 16px;
		width: 85%;
		margin: 0 auto 10px;
	}

	.terminal_table_wrapper{
		width: 93%;
		overflow: scroll;
		margin-bottom: 20px;
		padding-bottom: 15px;
		margin-left: 30px;
		padding-right: 30px;
	}
	
	.table_wrapper {
	    width: 900px;
		margin-bottom: 30px;
	}

	section.notice {
		width: 85%;
		margin: 25px auto;
	}

	.notice-important {
        font-size: 18px;
		margin: 25px 0 10px;
	}

	.notice-text {
		line-height: 25px;
	}

	section.youtube {
		width: 85%;
		margin: 100px auto 0;
	}

	.youtube-box ul {
		display: block;
	margin: 40px 0 0;
}

	.youtube-box ul li {
		width: 100%;
	}

	.youtube-box ul li iframe {
		width: 100%;
	}
	
	.youtube-box ul li .caption {
		margin: 5px 0 20px;
	}

}

@media screen and (max-width: 767px) {
/* ニュースページ */
	.news-box {
		margin: 30px auto;
	}

	.news-box_inner {
		width: 85%;
		display: block;
	}

	li.item {
		display: block;
		padding: 15px 0;
		width: 100%;
		overflow: hidden;
	}

	li.item p.date {
        width: 100px;
		padding: 5px 0;
		font-size: 13px;
	}

	li.item p.title {
		margin-left: 0;
		font-size: 17px;
		padding-right: 0;
		margin-top: 10px;
	}

	li.item a.btn {
		font-size: 15px;
		position: relative;
		float: right;
	}

	.news-detail_inner {
		width: 85%;
	}

	.news-detail_inner p.date {
		font-size: 15px;
		margin-bottom: 5px;
	}

	.news-detail_inner h3.news-title {
        font-size: 19px;
		padding-bottom: 15px;
	}

	.news-detail_inner .news-text {
        font-size: 16px;
		line-height: 25px;
		padding-top: 10px;
	}

.news-btn_box a.btn {
	text-align: center;
    padding: 7px 35px;
    font-size: 15px;
    font-weight: 500;
    color: #303338;
    display: inline-block;
    transition: .5s;
    border: 1px solid;
	border-radius: 25px;
	position: relative;
	width: 180px;
}
	
}

@media screen and (max-width: 767px) {
	/* ピックアップコンテンツページ */
	.recommend-box_inner {
		width: 100%;
	}

	h3.recommend-title {
		font-size: 25px;
		padding: 40px 0 30px;
		background-size: 85%;
	}

	.recommend-box_inner ul {
        display: block;
		padding-bottom: 30px;
	}

	.recommend-box_inner ul li {
		width: 70%;
		margin: 0 auto 30px;
		overflow: hidden;
	}
	
	.recommend-box_inner ul li h4 {
        font-size: 18px;
		line-height: 30px;
		margin: 10px 0;
	}
	
	a.recommend-btn {
        margin-top: 10px;
		font-size: 15px;
	}

	.pickup-box_inner {
		width: 85%;
		margin: 40px auto 0;
	}

	.contents-box_inner ul {
		display: block;
	}

	.contents-box_inner ul li {
		width: 100%;
		padding-bottom: 40px;
	}

	.contents-box_inner ul li h4 {
		font-size: 18px;
		line-height: 30px;
	}

	.contents-box_inner ul li .caption {
	    font-size: 16px;
		padding: 109px 0;
	}

	/* コンテンツ詳細ページ */
	.feature-contents_box-inner {
		width: 85%;
	}

	.feature-contents_box-inner h2 {
		font-size: 22px;
	}

	.FC_block {
		margin: 20px auto 40px;
	}

	.FC_block .FC1column-box {
		width: 100%;
	}

	.FC_block .FC2column-box {
        display: block;
	}

	.FC_block .FC2column-box img {
		width: 100%;
		margin-bottom: 20px;
	}

	.FC_block .FC-title {
		font-size: 20px;
	}

}
@media screen and (max-width: 767px) {
/*検索ブロック*/
	.search-block {
		width: 85%;
		margin: 40px auto 0;
		display: block;
		text-align: center;
	}

	select.aria,
	select.theme,
	select.day,
	select.cat,
	input.keyword{
        width: 70%;
		margin-right: 0;
		margin-bottom: 10px;
	}
	
	input.search-btn {
		width: 30%;
		margin-top: 10px;
	}
	
	/* モデルコース */
	.modelcourse-box_inner {
		width: 85%;
		margin: 50px auto 0;
	}

	.mc-box_inner ul {
		display: block;
	}

	.mc-box_inner ul li {
		width: 100%;
	}

	.mc-box_inner ul li h4 {
	    font-size: 18px;
		line-height: 30px;
	}

	/* モデルコース詳細ページ */
	.SI-inner {
		width: 85%;
	}

	.SI-mainblock h2 {
		font-size: 20px;
	}
	
	.SI-mainblock {
		margin: 0 auto 30px;
	}

.course-box_inner h2 {
    margin: 0 auto 45px;
	width: auto;
    display: flex;
    justify-content: center;
}

.course-box_inner .course-text {
    text-align: center;
	font-size: 20px;
	font-weight: 600;
	margin: 0 auto 70px;
}

	.course-root_inner ul {
		padding-top: 20px;
	}

	.course-root_inner li {
		display: block;
		margin-bottom: 50px;
	}

	.course-root_inner ul .arrow {
	    margin: 10px 0;
		bottom: -48px;
	}

	.course-root_inner ul .arrow img {
		width: 25px;
	}

	.course-root_inner ul .arrow p {
	    font-size: 13px;
		padding-top: 2px;
		margin-left: 150px;
		width: 100px;
	}

	.course-root_inner li .left {
	    width: 90%;
		margin: 15px auto;
	}

	.course-root_inner li .right h4 {
		font-size: 17px;
	}

	.course-root_inner li .right {
        padding: 0 15px;
		width: 100%;
		margin-bottom: 15px;
	}

	.accordion-001 {
		width: 100%;
		margin-bottom: 20px;
	}

	.accordion-001 summary {
        padding: 15px 20px;
		font-size: 17px;
	}
	
	.accordion-001 summary::after {
        border-bottom: 2px solid #fff;
		border-right: 2px solid #FFF;
	}

	.accordion-001 p {
		line-height: 20px;
		font-size: 13px;
		margin-top: 5px;
	}

	.si-notice {
        margin: -30px auto 30px;
		padding: 20px;
	}

	.si-notice h5 {
		font-size: 16px;
	}

	.si-notice div {
		font-size: 14px;
		line-height: 23px;
	}

	.si-btn  {
		width: 90%;
		margin: 20px auto 25px;
	}

	.si-btn a{
	    padding: 13px 25px;
		font-size: 15px;
	}

	.si_back-btn  {
		width: 65%;
		margin: 40px auto 0;
	}

	.si_back-btn a{
	    padding: 10px 25px;
		font-size: 15px;
	}
	
	.accordion-001 .mymap {
		width: 90%;
	}

}

@media screen and (max-width: 767px) {
/* お気に入りページ */
	.favorite-inner {
        width: 85%;
		margin: 40px auto;
	}

	.favorite-inner ul {
		display: block;
	}

	.favorite-inner ul li,
	.favorite-inner ul li:nth-child(3n){
        width: 100%;
		margin: 0 auto 50px;
	}
	
	.favorite-inner ul li p.title {
		font-size: 16px;
	}

	/* 検索結果ページ */
	.result-inner {
		width: 85%;
        margin: 0 auto;
	}

	.result-text {
		margin: 50px 0 25px;
	}

	.result-inner ul li{
        display: block;
		padding: 25px 0;
	}
	
	.result-inner ul li:last-child{
        display: block;
		padding: 25px 0;
		margin-bottom: 30px;
	}

	.result-inner ul li .left {
        width: 100%;
		margin-right: 0;
	}

	.result-inner ul li .right {
		width: 100%;
	}

	.result-inner ul li .right .category {
		margin-bottom: 10px;
		margin-left: 0;
		margin-top: 10px;
	}

	.result-inner ul li .right p.title {
		font-size: 16px;
	}
	
	p.text2 {
		margin-bottom: 0;
		font-size: 13px;
		line-height: 25px;
	}
}

@media screen and (max-width: 767px) {
/* アクセスページ */
	.access-box_inner {
        width: 85%;
	}

	h2.main-title {
		font-size: 23px;
		margin-bottom: 20px;
		margin-top: 40px;
	}

	h4.sub-title {
        font-size: 18px;
		margin-bottom: 10px;
	}

	p.text {
		margin-bottom: 0;
	}

	h3.ac-title {
		font-size: 20px;
		padding: 10px 20px;
		margin-bottom: 25px;
	}

	.access-block {
		display: block;
		margin-bottom: 40px;
	}

	.img-block {
		width: 100%;
		margin-bottom: 30px;
	}

	.img-block .caption {
		font-size: 12px;
	}

	.text-block {
	    width: 100%;
		padding-left: 0;
	}

	.text-block2 {
		width: 100%;
	}

	h5.title01,
	h5.title02,
	h5.title03,
	h5.title04{
		padding-left: 65px;
		line-height: 45px;
		font-size: 18px;
		background-size: 50px;
		margin-bottom: 10px;
		height: 50px;
		letter-spacing: 0;
	}

	.text-block p {
		line-height: 25px;
	}

	.text-block2 p {
		line-height: 25px;
	}

	.text-block p span {
		font-size: 14px;
		line-height: 25px;
	}

	h5.title05 {
		padding-left: 120px;
		line-height: 45px;
		background-position: left, left 18% center;
		font-size: 18px;
		background-size: 50px;
		letter-spacing: 0;
		margin-bottom: 10px;
		height: 50px;
	}
}
@media screen and (max-width: 767px) {
	/* プライバシーポリシーページ */
	.text-areabox {
        width: 85%;
	}

	.text-areabox h3.heading {
	    font-size: 17px;
		margin-bottom: 10px;
	}
	
	.text-areabox p {
	    line-height: 23px;
		margin-bottom: 45px;
		font-size: 13px;
	}

	/* サイトマップ */
	section.sitemap-block {
		width: 85%;
		padding: 0;
	}

	.btn-inner li {
		margin-bottom: 15px;
	}

	.btn-inner li a.link-btn{
		width: 100%;
        padding: 10px 25px;
		font-size: 15px;
	}

	.btn-inner li a.link-btn::before {
		right: 25px;
	}

	.btn2-inner ul {
		margin-top: 15px;
	}

	.btn2-inner li a.link-btn {
		padding: 10px 25px;
		font-size: 15px;
	}

	.btn2-inner li a.link-btn::before {
		right: 25px;
	}

}

/* tablet Layout ******************************************************************************************* */
@media screen and (min-width: 768px) and (max-width: 1250px) {

}

/* SP Layout ******************************************************************************************* */

/* Index
============================================================ */
@media screen and (max-width: 767px) {
}

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

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

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

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