/*
Theme Name: Ohtawara Houjinkai
Description: Ohtawara Houjinkai Template
Author: Planning OFFICE ONE
Version: 1.0
*/
@charset "UTF-8";
html{font-size:62.5%;}
* {margin: 0;padding: 0;box-sizing: border-box;}
img {border: none;vertical-align: bottom;line-height: 0;}
main{display: block;}
h1,h2,h3,h4,h5,h6{font-size: 100%;font-weight: normal;font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;}
h1,h1 a {font-size:26px;font-size:2.6rem;}
h2,h2 a {font-size:22px;font-size:2.2rem;}
h3 {font-size:20px;font-size:2.0rem;}
h4,h5 {font-size:18px;font-size:1.8rem;}
p,dl,a,ul,li,table,dt,dt a,figcaption {font-size:15px;font-size:1.5rem;font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;}
a {text-decoration: none;color: inherit;line-height:inherit;font-size:inherit;cursor: pointer;transition-duration: 0.4s;}
a:hover{color:rgba(150,150,150,1);text-decoration: none;}
ul,p,tr,td,table{margin:0;padding:0;color: #333;}
p{line-height: 1.8;color: #333;text-align: justify;text-justify: inter-ideograph;-moz-font-feature-settings: "palt";-webkit-font-feature-settings: "palt";font-feature-settings: "palt";}
li,dd{list-style:none;margin: 0;padding: 0;color: #333;}
.cf:after{content: "";clear: both;display: block;}
.no-border{border: 0px!important;}
span.ib{display: inline-block;}
.attention{margin-left: 1em!important;text-indent: -1em;}
.attention:before{content: "※";}
.upper-1200,.upper-1024,.upper-767{display: block;}
.under-1200,.under-1024,.under-767{display: none;}
.fbox{display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap:wrap;-webkit-justify-content: space-between;justify-content:space-between;}
.fbox-column{-webkit-flex-direction: column;flex-direction:column;}
.fbox-start{-webkit-justify-content: flex-start;justify-content:flex-start;}
.fbox-end{-webkit-justify-content: flex-end;justify-content:flex-end;}
.fbox-center{-webkit-justify-content: center;justify-content:center;}
.fali-center{-webkit-align-items: center;align-items:center;}
.fali-end{-webkit-align-items: flex-end;align-items:flex-end;}
.fali-start{-webkit-align-items: flex-start;align-items:flex-start;}
.fali-base{-webkit-align-items: baseline;align-items:baseline;}
:root {
	--main-color: rgba(35,140,214,1);
	--sub-color: rgba(184, 223, 251, 1.0);
	--srf-font: "Noto Serif", "游明朝","YuMincho","Hiragino Mincho ProN","Hiragino Mincho Pro","ＭＳ 明朝",serif;
}
.red{color: red;}
.blue{color:var(--main-color);}
.light-blue{color:var(--sub-color);}
.white{color:#fff;}
.mi{width: 100%;height: auto;}
.st{font-size:75%;}
.os4{font-family: 'Oswald', sans-serif;font-weight: 400;letter-spacing: .05em;}.os7{font-family: 'Oswald', sans-serif;font-weight: 700;letter-spacing: .05em;}
.js4{font-family: 'Josefin Slab', serif;font-weight: 400;}.js7{font-family: 'Josefin Slab', serif;font-weight: 700;}
.po3{font-family: 'Poppins', sans-serif;font-weight: 300;}.po4{font-family: 'Poppins', sans-serif;font-weight: 400;}.po5{font-family: 'Poppins', sans-serif;font-weight: 500;}
.sticky{position: sticky;top: 0;z-index: 50;}
.multi-column-box{-moz-column-count: 2;-webkit-column-count: 2;column-count: 2;-moz-column-gap: 50px;-webkit-column-gap: 50px;column-gap: 50px;}
.srf{font-family:var(--srf-font)}
.pt0{padding-top: 0!important;}
.mt0{margin-top: 0!important;}
.mt15{margin-top: 15px!important;}
body{font-size:10px;font-size:1.0rem;width:100%;line-height:1.8;font-family: "Noto Sans JP", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;background-color: #fff;}
/*---------------------------------------------------------common-----------------------------------------------*/
section.common-section{
	max-width: 1360px;
	width: 100%;
	margin: 0 auto;
	position: relative;
	padding: 40px 30px;
	overflow: hidden;
}
ul.dot-list{
	padding-left: 1em;
}
ul.dot-list li{
	list-style-position: outside;
	list-style-type: circle;
}
/*---------------------------------------------------------child-common-----------------------------------------*/
section.common-section-top{
	padding-top: 60px;
}
section.common-section-single{
	max-width: 960px;
}
article.child-top{
	padding-top: 135px;
}
main div.child-top-title{
	width: 100%;
}
div.common-title{
	margin-bottom: 35px;
}
div.common-title h2{
	text-align: center;
	font-size: 30px;
	font-size: 3.0rem;
}
div.common-title p{
	text-align: center;
	color: #aaa;
	line-height: 1.4;
	font-size: 14px;
	font-size: 1.4rem;
}

div.common-pargraphs-center p{
	text-align: center;
}
div.common-list-wrapper{
	width: 100%;
	max-width: 650px;
	margin: 40px auto;
}
ul.common-list li{
	margin-bottom: 0px;
	padding-bottom: 0px;
	border-bottom: 1px solid var(--sub-color);
}
ul.common-list li div.common-list-title{
	width: 10em;
	text-align: center;
	padding: 10px 15px;
}
ul.common-list li div.common-list-title p{
		color: var(--main-color);
}
ul.common-list li div.common-list-contents{
	width: calc(100% - 10em);
	padding: 10px 15px;
}
div.common-subtitle{
	margin: 45px auto 20px;
}
div.common-subtitle h4{
	text-align: center;
}
div.common-subtitle h4 span{
	display: inline-block;
	border-bottom: 2px solid var(--main-color);
	font-size: 22px;
	font-size: 2.2rem;
}
div.common-subtitle p{
	text-align: center;
	margin-top: 8px;
	font-size: 14px;
	font-size: 1.4rem;
}
h5.common-list-title{
	border-bottom: 2px solid var(--sub-color);
}
/*---------------------------------------------------------header-----------------------------------------------*/
header{
	padding: 20px 30px;
	width: 100%;
	filter: drop-shadow(0 0 10px rgba(0, 0, 0, .25));
	background-color: rgba(255, 255, 255, .8);
	backdrop-filter: blur(12px);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 15;
}
div.header-tel h3{
	font-weight: bold;
	font-size: 28px;
	font-size: 2.8rem;
	margin-left: 10px;
	line-height: 1.0;
}
div.header-tel p{
	font-weight: bold;
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.0;
	color: rgba(153, 153, 153, 1.0);
}
div.header-right ul{
	margin-top: 20px;
}
div.header-right ul li:not(:last-child){
	padding: 5px 25px;
	line-height: 1.0;
	border-right: 1px solid rgba(200, 200, 200, 1.0);
}
div.header-right ul li a{
	font-weight: bold;
}
div.header-right ul li.width-bg{
	margin-left: 25px;
}
div.header-right ul li.width-bg a{
	display: bold;
	background-color: var(--main-color);
	padding: 5px 80px;
	border: 1px solid var(--main-color);
}
div.header-right ul li.width-bg a:hover{
	color: var(--main-color);
	background-color: transparent;
}
.humberger-wrapper{
	/*transform: translateY(-150%);*/
	position: fixed;
	top: 20px;
	right: 15px;
	padding: 0;
	background-color: transparent;
	z-index: 19;
	border-radius: 50%;
	transition-duration: .4s;
	display: none;
}
.humberger{
	margin-left: 0;
	width: 40px;
	cursor: pointer;
	transition-duration: .4s;
	position: relative;
}
div.humberger:before{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #6b6b6b;
	content: "";
	transition-duration: .4s;
}
div.humberger:after{
	position: absolute;
	top: 10px;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #6b6b6b;
	content: "";
	transition-duration: .4s;
}
div.humberger-inner:before{
	position: absolute;
	top: 20px;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #6b6b6b;
	content: "";
	transition-duration: .4s;
}
div.humberger p{
	font-size: 14px;
	font-size: 1.4rem;
	text-align: center;
	color: #6b6b6b;
	padding-top: 24px;
}
/*---------------------------------------------------------footer-----------------------------------------------*/
footer{

}
section.to-the-top{
	position: fixed;
	z-index: 10;
	right: 15px;
	bottom: 15px;
	background-color: var(--main-color);
	opacity: 0;
	transition-duration: .4s;
	padding: 0 15px;
}
section.to-the-top p a{
	color: #fff;
}
div.banner-area{
	padding-top: 15px;
	border-top: 1px solid var(--main-color);
}
div.banner-area ul{
	gap: 25px 30px;
	margin: 0 auto;
	width: 100%;
	max-width: 1360px;
	padding: 20px 30px;
}
div.banner-area li{
	width: 190px;
}
div.footer-main-area{
	background-color: var(--main-color);
	padding-bottom: 20px;
}
div.footer-main-contents{
	margin: 0 30px;
	padding: 30px 0px 35px;
	margin-bottom: 15px;
	border-bottom: 1px solid #fff;
}
div.footer-left{
	width: 560px;
}
div.footer-right{
	width: calc(100% - 570px);
}
div.footer-company-wrapper{
	margin-bottom: 15px;
}
div.footer-left figure{
	width: 80px;
}
div.footer-company-name{
	margin-left: 10px;
}
div.footer-company-name h5{
	line-height: 1.6;
	font-weight: bold;
}
div.footer-company-name h3{
	line-height: 1.2;
	font-size: 30px;
	font-size: 3.0rem;
	font-weight: bold;
}
p.footer-phone{
	font-size: 18px;
	font-size: 1.8rem;
}
nav.footer-nav{
	gap: 60px;
}
nav.footer-nav dl dt{
	font-size: 18px;
	font-size: 1.8tem;
	margin-bottom: 8px;
	color: #fff;
	font-weight: bold;
}
nav.footer-nav dl dd{
	color: #fff;
}
nav.footer-nav dl a:hover{
	color: #111;
}
div.footer-bottom{
	padding: 0 30px 50px;
}
div.footer-bottom a{
	text-decoration: underline;
}
div.footer-bottom a:hover{
	color: #111;
}
/*---------------------------------------------------------top--------------------------------------------------*/
div.top-topics-wrapper{
	background-color: #fff;
	filter: drop-shadow(0 0 8px rgba(0, 0, 0, .15));
	padding: 20px 0;
}
p.top-topics-title{
	font-size: 18px;
	font-size: 1.8rem;
	width: 220px;
	text-align: center;
	border-right: 1px solid #999;
	padding: 10px 0;
}
div.top-topics-wrapper > a{
	font-size: 14px;
	font-size: 1.4rem;
	color: var(--main-color);
	border-radius: 10px;
	border: 1px solid var(--main-color);
	padding: 10px 25px;
	text-align: center;
	width: 180px;
	margin-right: 30px;
	position: relative;
}
div.top-topics-wrapper > a:before{
	position: absolute;
	right: 10px;
	top: 20px;
	content: "";
	width: 10px;
	height: 1px;
	transform: rotate(45deg);
	z-index: 2;
	background-color: var(--main-color);
}
div.top-topics-wrapper > a:after{
	position: absolute;
	right: 10px;
	top: 27px;
	content: "";
	width: 10px;
	height: 1px;
	transform: rotate(-45deg);
	z-index: 2;
	background-color: var(--main-color);
}
div.top-topics-wrapper > a:hover{
	background-color: var(--main-color);
	color: #fff;
}
div.top-topics-contents{
	width: calc(100% - 220px - 180px - 30px);
	padding: 10px 25px;
}
div.top-topics-contents p{
	padding: 0 30px;
}
p.top-topics-cat{
	padding: 10px 30px;
	color: var(--main-color);
	background-color: var(--sub-color);
	text-align: center;
	border-radius: 4px;
}
article.top-topics-article{
	position: relative;
	overflow: hidden;
}
article.top-topics-article:before{
	content: "";
	width: 140%;
	position: absolute;
	top: 0;
	right: -20%;
	left: -20%;
	margin: 0 auto;
	background: radial-gradient(ellipse at top, rgba(245, 245, 245, 1.0), rgba(245, 245, 245, 1.0) 65%, rgba(186, 219, 242, 1.0) 70%, rgba(186, 219, 242, 1.0) 72%, transparent 72.1%, transparent 100%);
	height: 80%;
	z-index: -1;
}
div.top-about-title{
	text-align: center;
	min-height: 207px;
	position: relative;
}
div.top-about-title figure{
	width: 250px;
	margin: auto;
	position: absolute;
	inset: 0;
}
div.top-about-texts{
	position: relative;
	z-index: 2;
}
div.top-about-texts h2{
	font-size: 70px;
	font-size: 7.0rem;
	line-height: 1.4;
}
div.top-about-texts p{
	text-align: center;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: bold;
}
div.top-about-contents h3{
	text-align: center;
	font-size: 40px;
	font-size: 4.0rem;
	font-weight: bold;
	margin-block: 15px;
}
div.top-about-pargraphs p{
	text-align: center;
	font-size: 18px;
	font-size: 1.8rem;
}
ul.top-about-list{
	width: 95%;
	max-width: 890px;
	margin: 100px auto 0;
	gap: 65px;
}
ul.top-about-list li{
	width: 250px;
	position: relative;
}
ul.top-about-list li p{
	font-size: 100px;
	font-size: 10.0rem;
	position: absolute;
	z-index: 2;
	left: 0;
	top: -85px;
}
ul.top-about-list li h5{
	text-align: center;
	position: absolute;
	color: #fff;
	font-weight: bold;
	line-height: 1.4;
	bottom: 20px;
	left: 0;
	right: 0;
	font-size: 22px;
	font-size: 2.2rem;
}
div.top-about-btns{
	margin-top: 60px;
	gap: 30px;
	position: relative;
	z-index: 5;
}
div.top-about-btns a{
	display: block;
	color: #fff;
	padding: 10px 55px;
	line-height: 1.0;
	background-color: var(--main-color);
	text-align: center;
	font-size: 16px;
	font-size: 1.6rem;
	border: 1px solid var(--main-color);
	position: relative;
	min-width: 208px;
}
div.top-about-btns a:hover{
	color: var(--main-color);
	background-color: #fff;
}
div.top-about-btns a:before{
	position: absolute;
	right: 10px;
	top: 15px;
	content: "";
	width: 10px;
	height: 1px;
	transform: rotate(45deg);
	z-index: 2;
	background-color: #fff;
}
div.top-about-btns a:after{
	position: absolute;
	right: 10px;
	top: 22px;
	content: "";
	width: 10px;
	height: 1px;
	transform: rotate(-45deg);
	z-index: 2;
	background-color: #fff;
}
article.top-news-list-wrapper{
	background: url(images/top/bg-top_news.png) repeat center center;
}
a.top-all-topics{
	width: 250px;
	text-align: center;
	display: block;
	color: #fff;
	background-color: var(--main-color);
	border: 1px solid #fff;
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.0;
	padding: 12px;
	position: relative;
}
a.top-all-topics:before{
	position: absolute;
	right: 10px;
	top: 17px;
	content: "";
	width: 10px;
	height: 1px;
	transform: rotate(45deg);
	z-index: 2;
	background-color: #fff;
}
a.top-all-topics:after{
	position: absolute;
	right: 10px;
	top: 24px;
	content: "";
	width: 10px;
	height: 1px;
	transform: rotate(-45deg);
	z-index: 2;
	background-color: #fff;
}
div.top-news-list-title-left{
	width: calc(100% - 280px);
	padding-bottom: 0px;
	margin-bottom: 15px;
	border-bottom: 2px solid #fff;
}
div.top-news-list-title-left h2{
	font-size: 70px;
	font-size: 7.0rem;
	line-height: 1.2;
}
div.top-news-list-title-left p{
	font-size: 24px;
	font-size: 2.4rem;
	margin-left: 15px;
	line-height: 1.2;
}
ul.top-news-list-cats{
	gap: 15px 0;
}
ul.top-news-list-cats li{
	padding: 5px 20px;
	border-right: 1px solid #fff;
	line-height: 1.0;
}
ul.top-news-list-cats li:first-child{
	border-right: none;
	background-color: #fff;
	color: var(--main-color);
}
ul.top-news-list-cats li:last-child{
	border-right: none;
}
ul.top-news-list-cats li a{
	text-decoration: underline;
}
div.top-news-list-contents-wrapper{
	margin-top: 40px;
}
ul.top-about-list-singles{
	gap: 35px;
}
ul.top-about-list-singles li{
	width: calc((100% - 70px) / 3);
}
ul.top-about-list-singles li figure{
	width: 100%;
	overflow: hidden;
}
ul.top-about-list-singles li figure a:hover{
	opacity: .5;
}
ul.top-about-list-singles li figure img{
	object-fit: cover;
	aspect-ratio: 1 / 1;
	width: 100%;
}
div.top-news-attr{
	margin-top: 10px;
}
div.top-news-attr p{
	width: 48%;
	text-align: center;
	line-height: 1.0;
	padding: 5px;
}
div.top-news-attr p.top-news-list-date{
	background-color: #666;
}
div.top-news-attr p.top-news-list-type{
	color: var(--main-color);
	background-color: var(--sub-color);
}
ul.top-about-list-singles li h5{
	color: #fff;
	text-decoration: underline;
	margin-top: 5px;
}
div.topics-banner{
	margin-top: 80px;
}
div.topics-banner figure{
	max-width: 820px;
	width: 95%;
	margin: 0 auto;
}
/*---------------------------------------------------------about------------------------------------------------*/
div.teikan-area figure{
	width: 50%;
	max-width: 100px;
	margin: 0 auto;
}
div.teikan-area p{
	margin-top: 15px;
	text-align: center;
}
div.teikan-area p a{
	text-decoration: underline;
}
div.entry-figures{
	gap: 25px;
	margin-bottom: 25px;
}
div.entry-figures figure{
	width: calc((100% - 25px) / 2);
}
/*--------------------------------------------------------activity----------------------------------------------*/
ul.activities-list{
	width: 95%;
	max-width: 750px;
	margin: 0 auto 25px;
}
ul.activities-list > li{
	text-align: center;
	font-size: 18px;
	font-size: 1.8rem;
}
ul.activities-list > li:not(:last-child){
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--sub-color);
}
ul.activities-list > li a{
	text-decoration: underline;
	color: #333;
}
ul.activities-photo-list{
	margin-top: 25px;
	gap: 25px;
}
ul.activities-photo-list li{
	width: calc((100% - 75px) / 4);
}
ul.various-list{
	width: 95%;
	max-width: 750px;
	margin: 0 auto;
}
ul.various-list > li{
	color: var(--main-color);
	list-style-type: decimal;
}
ul.various-list > li:not(:last-child){
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid var(--sub-color);
}
ul.various-list li h5{
	font-size: 16px;
	font-size: 1.6rem;
	color: #000;
}
ul.various-list li h5:before{
	content: "■";
}
div.various-list-cell:not(:last-child){
	margin-bottom: 15px;
}
/*---------------------------------------------------------contact----------------------------------------------*/
ul.price-list li div.common-list-title{
	width: 34em;
}
ul.price-list li div.common-list-contents{
	width: calc(100% - 34em);
}
ul.price-list li div.common-list-contents p{
	text-align: right;
}
/*---------------------------------------------------------privacy----------------------------------------------*/
div.privacy-wrapper{
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
}
div.privacy-wrapper p{
	margin-bottom: 15px;
}
ul.privacy-list{
	padding-left: 1.5em;
}
ul.privacy-list li{
	list-style-type: decimal;
	list-style-position: outside;
}
/*-------------------------------------------------------------------news--------------------------------------*/
div.child-subtitle{
	margin-bottom: 45px;
	border-left: 6px solid var(--main-color);
	padding-left: 15px;
}
div.child-subtitle > p{
	color: #9e9e9e;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1.2;
}
div.child-subtitle h3{
	font-size: 24px;
	font-size: 2.4rem;
}
div.news-page-attr{
	margin-bottom: 5px;
}
div.news-page-attr a{
	color: #fff;
	display: block;
	text-align: center;
	padding: 0px 25px;
	background-color: var(--main-color);
	margin-right: 10px;
	font-size: 15px;
	font-size: 1.5rem;
}
div.news-page-attr a:hover{
	background-color: #999;
}
div.news-single-paragraphs{
	margin-top: 25px;
}
/*---------------------------------------------------------pagenation------------------------------------------*/
.pagination {
	padding: 20px 0;
	position: relative;
	font-size: 14px;
	line-height: 14px;
	text-align: center;
	display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap:wrap;
	-webkit-justify-content: center;justify-content:center;
	margin-top: 50px;
}
.pagination-box {
	display: inline-block;
}
.pagination span, .pagination a {
	display: block;
	margin: 2px 6px 2px 0;
	padding: 10px 15px 10px 15px;
	text-decoration: none;
	width: auto;
	color: #fff; /* 通常の文字色 */
	background: var(--main-color);
}
.pagination span{
	background-color: var(--main-color);
}
.pagination a:hover{
	color: #fff; /* マウスホバー時の文字色 */
	background: #000; /* マウスホバー時の背景色 */
}
.pagination .current{
	padding: 10px 15px 10px 15px;
	color: rgba(22, 25, 37, 1);
	background: #fff;
}
nav.single-nav{
	margin-top: 35px;
}
nav.single-nav > div{
	width: 30%;
}
nav.single-nav > div.single-goback p{
	text-align: center;
	width: 100%;
}
nav.single-nav > div div.more-link{
	width: 40px;
}
nav.single-nav > div div.more-link a{
	font-size: 13px;
	font-size: 1.3rem;
}
nav.single-nav > div p{
	width: calc(100% - 45px);
}
div.single-next div.more-link{
	text-align: right;
}
div.single-next p{
	text-align: right;
}
nav.single-nav > div p a{
	text-decoration: underline;
}
@media only screen and (max-width: 413px) {
	.pagination {
		font-size: 12px;
		line-height: 12px;
	}
	.pagination span, .pagination a {
		padding: 8px 10px 8px 10px;
	}
	.pagination .current{
		padding: 8px 10px 8px 10px;
	}
	nav.single-nav > div p{
		display: none;
	}
	nav.single-nav > div.single-goback p{
		display: block;
	}
}
ul.anchor-list{
	gap: 20px;
	margin-bottom: 40px;
}
ul.anchor-list li{
	list-style-type: none;
	margin: 0;
}
ul.anchor-list li a{
	border-radius: 20px;
	background-color: var(--main-color);
	color: #fff;
	padding: 5px 30px;
	text-decoration: none;
}
/*---------------------------------------------------------table------------------------------------------------*/
table{

	margin:20px auto 2px;
	width: 100%;
	border-spacing: 8px;
}
td,th{
	padding: 15px 25px;
	-moz-font-feature-settings: "palt";
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	font-weight: normal;
	line-height: 1.2;
	text-align: left;
}
th{
	background-color: rgba(172,50,50,1);
	color: #fff;
	width: 25%;
	vertical-align: top;
}
td{
	background-color: #f6f6f6;
	width: 75%;
}
table tr:nth-child(even) td{
	background-color: #fbfbfb;
}
/*---------------------------------------------------------navigation------------------------------------------*/
section.slide-nav{
	width: 100%;
	backdrop-filter:blur(10px);
	position: fixed;
	inset: 0;
	width: 100%;
	min-height: 100vh;
	z-index: 14;
	background-color: rgba(0,105,183,.75);
	left: 110vw;
	opacity: 0;
	transition-duration: .4s;
}
section.slide-nav nav{
	width: 30%;
	background-color: rgba(0,105,183,1);
	position: absolute;
	right: -40vw;
	top: 0;
	bottom: 0;
	min-height: 100%;
	padding: 160px 40px 40px;
	overflow-y: scroll;
	transition-duration: .6s;
}
section.slide-nav nav ul li{
	color: #fff;
	text-align: right;
	line-height: 2.0;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px dotted #fff;
}
section.slide-nav nav ul li h5{
	text-align: right;
	color: #fff;
	line-height: 1.4;
}
section.slide-nav nav ul li a{
	text-align: right;
}
section.slide-nav nav ul li figure{
	width: 42px;
	margin: 0 0 0 auto;
}
ul.slide-primary-list > li{
	margin-bottom: 15px;
	font-size: 22px;
	font-size: 2.2rem;
}
ul.slide-primary-list > li ul li{
	line-height: 1.8;
}
ul.slide-primary-list > li ul li a{
	position: relative;
	display: inline-block;
	padding-right: 35px;
}
ul.slide-primary-list > li ul li a:after{
	content: "";
	width: 25px;
	height: 1px;
	background-color: #fff;
	position: absolute;
	right: 0;
	top: 16px;
}
section.nav-toggle-open{
	left: 0;
	opacity: 1.0;
}
section.slide-nav nav.slide-nav-open{
	right: 0;
}
.noscroll{
	-ms-overflow-style: none;
	scrollbar-width: none;
	overflow: hidden;
	height: 100vh;
}
.noscroll::-webkit-scrollbar{
	display: none;
}
div.humberger.slide-humberger:before{
	transform: rotate(45deg);
	top: 10px;
}
div.humberger.slide-humberger:after{
	top: 10px;
	left: 0;
	opacity: 0;
}
div.humberger.slide-humberger div.humberger-inner:before{
	transform: rotate(-45deg);
	top: 10px;
}
/*---------------------------------------------------------slides-----------------------------------------------*/
section.swiper-container-main{
	width: 100%;
	margin: 0 auto;
	position: relative;
	height: 100vh;
	overflow: hidden;
}
section.swiper-container-main .swiper-pagination-bullet{
	background-color: #c1c1c1;
	opacity: 1;
	width: 10px;
	height: 10px;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet{
	margin: 10px 0;
}
.swiper-button-next,.swiper-button-prev {
	top: 50%;
	width: 15px;
	height: 27px;
	margin-top: -13.5px;
}
.swiper-button-prev {
	background: url(images/fig-slide-arrow-left.png) no-repeat center center / contain;
}
.swiper-button-next {
	background: url(images/fig-slide-arrow-right.png) no-repeat center center / contain;
}
section.swiper-container .swiper-pagination-bullet-active{
	background-color: rgba(168,0,0,1);
}
section.swiper-container > .swiper-pagination-bullets{
	width: 18px;
	left: 45px;
	display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap:wrap;-webkit-justify-content: center;justify-content:center;-webkit-flex-direction: column;flex-direction:column;
	height: 100vh;
}
section.swiper-container-main li.slide1{
	background: rgba(0, 0, 0, 0) url('images/top/slide/slide1.jpg') no-repeat center center / cover;
}


div.slide-text{
	position: absolute;
	z-index: 5;
	width: 100%;
	height: 100%;
	inset: 0;
	margin: auto;
}
div.slide-text h4{
	text-align: center;
	font-weight: bold;
	font-size: 42px;
	font-size: 4.2rem;
	line-height: 1.4;
	filter: drop-shadow(0 0 5px rgba(0, 0, 0, .25));
}
div.slide-text a{
	position: absolute;
	z-index: 6;
	width: 150px;
	height: 150px;
	border-radius: 50%;
	background-color: var(--main-color);
	display: block;
	text-align: center;
	padding: 60px 15px 15px;
	font-size: 20px;
	font-size: 2.0rem;
	line-height: 1.4;
	right: 60px;
	bottom: 60px;
}
div.slide-text a:hover{
	color: #fff;
	transform: rotate(360deg);
}
div.slide-text a:after{
	content: "";
	width: 20px;
	height: 2px;
	background-color: #fff;
	position: absolute;
	top: 25px;
	left: 0;
	right: 0;
	margin: auto;
	transform: rotate(45deg);
}
div.slide-text a:before{
	content: "";
	width: 20px;
	height: 2px;
	background-color: #fff;
	position: absolute;
	top: 38px;
	left: 0;
	right: 0;
	margin: auto;
	transform: rotate(-45deg);
}
/*---------------------------------------------------------1370px以下--------------------------------------------*/
@media screen and (max-width: 1370px) {

}
/*---------------------------------------------------------1330px以下--------------------------------------------*/
@media screen and (max-width: 1330px) {
	div.footer-main-contents{
		-webkit-flex-direction: column;flex-direction:column;
		-webkit-align-items: center;align-items:center;
	}
	div.footer-company-wrapper{
		-webkit-justify-content: center;justify-content:center;
	}
	div.footer-left{
		margin-bottom: 35px;
		width: 100%;
	}
	div.footer-left p{
		text-align: center;
	}
	div.footer-right{
		width: 100%;
	}
	nav.footer-nav{
		gap: 45px;
		-webkit-justify-content: center;justify-content:center;
	}
}
/*---------------------------------------------------------1225px以下--------------------------------------------*/
@media screen and (max-width: 1225px) {
	header{
		padding: 15px;
	}
	section.common-section{
		padding: 40px 15px;
	}
	div.footer-bottom{
		padding-right: 15px;
		padding-left: 15px;
	}
	div.footer-main-contents{
		margin: 0 15px 15px;
	}
	div.header-right ul li:not(:last-child){
		padding-right: 15px;
		padding-left: 15px;
	}
}
/*---------------------------------------------------------1100px以下--------------------------------------------*/
@media screen and (max-width: 1100px) {

}
/*---------------------------------------------------------1024px以下--------------------------------------------*/
@media screen and (max-width: 1024px) {
	div.header-right ul{
		display: none;
	}
	.humberger-wrapper{
		display: block;
	}
	div.header-tel{
		padding-right: 60px;
	}
	p.top-topics-title{
		width: 100%;
		border-right: none;
		padding-bottom: 10px;
		margin-bottom: 10px;
		border-bottom: 1px solid var(--sub-color);
	}
	div.top-topics-contents{
		width: calc(100% - 180px - 30px);
	}
	a.top-all-topics{
		display: none;
	}
	div.top-news-list-title-left{
		width: 100%;
	}
}
/*---------------------------------------------------------920px以下--------------------------------------------*/
@media screen and (max-width: 920px) {

}
/*---------------------------------------------------------880px以下---------------------------------------------*/
@media screen and (max-width: 880px) {
	div.header-tel p{
		display: none;
	}
	div.top-topics-wrapper{
		padding: 5px 0;
	}
	div.top-topics-wrapper > a{
		display: none;
	}
	div.top-topics-contents{
		width: 100%;
		padding: 10px;
	}
	div.top-topics-contents p{
		margin-top: 10px;
		padding: 0 10px;
	}
	div.top-topics-contents p a{
		text-decoration: underline;
	}
	article.top-topics-article:before{
		background: linear-gradient(rgba(245, 245, 245, 1.0), rgba(245, 245, 245, 1.0) 65%, rgba(186, 219, 242, 1.0) 70%, rgba(186, 219, 242, 1.0) 72%, transparent 100%);
		height: 100%;
	}
}
/*---------------------------------------------------------767px以下---------------------------------------------*/
@media screen and (max-width: 767px) {
	.upper-767{
		display: none;
	}
}
/*---------------------------------------------------------650px以下---------------------------------------------*/
@media screen and (max-width: 650px) {
	nav.footer-nav dl dd{
		display: none;
	}
	nav.footer-nav dl{
		width: 100%;
	}
	nav.footer-nav dl dt{
		text-align: center;
	}
	nav.footer-nav dl dt a{
		text-decoration: underline;
	}
	nav.footer-nav{
		gap: 5px;
	}
	div.footer-bottom p{
		text-align: center;
		margin-bottom: 15px;
		width: 100%;
	}
	div.header-inner h1{
		width: 180px;
	}
	div.header-tel{
		padding-right: 0;
	}
	div.header-tel h3{
		font-size: 22px;
		font-size: 2.2rem;
		margin-left: 0;
		padding-right: 0;
		margin-top: 5px;
	}
	section.slide-nav nav{
		width: 100%;
		padding: 150px 20px 30px;
		overflow: scroll;
	}
	section.slide-nav nav ul li h5{
		text-align: center;
	}
	div.header-inner{
		-webkit-flex-direction: column;flex-direction:column;
		-webkit-align-items: center;align-items:center;
	}
	div.slide-text h4{
		font-size: 32px;
		font-size: 3.2rem;
	}
	div.slide-text a{
		right: 15px;
		bottom: 15px;
	}
	div.top-about-texts h2{
		font-size: 56px;
		font-size: 5.6rem;
	}
	div.top-about-contents h3{
		font-size: 32px;
		font-size: 3.2rem;
	}
	div.top-news-list-title-left h2{
		font-size: 56px;
		font-size: 5.6rem;
	}
	div.top-news-list-title-left p{
		font-size: 18px;
		font-size: 1.8rem;
	}
	ul.top-about-list-singles{
		gap: 20px;
	}
	ul.top-about-list-singles li{
		width: calc((100% - 20px) / 2);
	}
	div.top-news-attr p.top-news-list-date{
		font-size: 13px;
		font-size: 1.3rem;
		width: 100%;
	}
	div.top-news-attr p.top-news-list-type{
		width: 100%;
		font-size: 13px;
		font-size: 1.3rem;
	}
	div.common-title h2{
		font-size: 27px;
		font-size: 2.7rem;
	}
	ul.activities-photo-list li{
		width: calc((100% - 25px) / 2);
	}
	ul.price-list li div.common-list-title{
		width: 100%;
	}
	ul.price-list li div.common-list-contents{
		width: 100%;
	}
	div.entry-figures figure{
		width: 100%;
	}
}
/*---------------------------------------------------------550px以下---------------------------------------------*/
@media screen and (max-width: 550px) {

}
/*---------------------------------------------------------480px以下---------------------------------------------*/
@media screen and (max-width: 480px) {
	div.top-news-list-title-left h2{
		width: 100%;
		text-align: center;
	}
	div.top-news-list-title-left p{
		width: 100%;
		text-align: center;
		margin: 15px 0;
	}
}