@charset "UTF-8";
/******************************************
[reset]
******************************************/
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700,900");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;700&display=swap");
*,
::before,
::after {
	box-sizing : border-box;
	}

::before, ::after {
	vertical-align : inherit;
	text-decoration : inherit;
	}

* {
	margin : 0;
	padding : 0;
	}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display : block;
	}

[hidden],
template {
	display : none;
	}

small {
	font-size : 80%;
	}

ul, ol {
	list-style : none;
	}

table {
	border-collapse : collapse;
	border-spacing : 0;
	}

a {
	background-color : transparent;
	text-decoration : none;

	-webkit-text-decoration-skip : objects;
	}

a:active, a:hover {
	outline-width : 0;
	}

b, strong {
	font-weight : bolder;
	}

img {
	border-style : none;
	}

input,
button,
textarea,
select {
	color : inherit;
	border : 0;

	-webkit-appearance : none;
	   -moz-appearance : none;
	outline : 0;
	}

input,
button,
textarea,
select,
optgroup {
	font : inherit;
	}

[disabled] {
	cursor : default;
	}

input[type="number"] {
	-moz-appearance : textfield;
	}

input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button {
	margin : 0;

	-webkit-appearance : none;
	}

::-webkit-file-upload-button {
	-webkit-appearance : button;
	font : inherit;
	}

input::-ms-clear {
	visibility : hidden;
	}

optgroup {
	font-weight : bold;
	}

select::-ms-expand {
	display : none;
	}

select::-ms-value {
	color : currentColor;
	}

textarea {
	overflow : auto;
	}

button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
	cursor : pointer;
	}

button {
	overflow : visible;
	background : none;
	}

::-moz-selection,
::selection {
	background-color : #b3d4fc;
	color : #000000;

	text-shadow : none;
	}

@font-face {
	font-family : 'icomoon';
	font-weight : normal;

	font-style : normal;
	src : url("../img/fonts/icomoon.eot");
	src : url("../img/fonts/icomoon.eot") format("embedded-opentype"), url("../img/fonts/icomoon.woff") format("woff"), url("../img/fonts/icomoon.ttf") format("truetype"), url("../img/fonts/icomoon.svg") format("svg");
	}

[class^="icon-"],
[class*=" icon-"] {
	font-family : 'icomoon';
	font-weight : normal;
	line-height : 1;
	/* Better Font Rendering =========== */

	-webkit-font-smoothing : antialiased;
	font-style : normal;
	font-variant : normal;
	-moz-osx-font-smoothing : grayscale;
	speak : none;
	text-transform : none;
	}

.icon-number1_w:before {
	content : "\e907";
	}

.icon-number2_w:before {
	content : "\e909";
	}

.icon-number3_w:before {
	content : "\e90c";
	}

.icon-number4_w:before {
	content : "\e90d";
	}

.icon-number:before {
	content : "\e908";
	}

.icon-number1:before {
	content : "\e90e";
	}

.icon-number2:before {
	content : "\e90f";
	}

.icon-number3:before {
	content : "\e910";
	}

.icon-number4:before {
	content : "\e911";
	}

.icon-number5:before {
	content : "\e90a";
	}

.icon-square-line:before {
	content : "\e835";
	}

.icon-close:before {
	content : "\e5cd";
	}

.icon-mail:before {
	content : "\e159";
	}

.icon-tel:before {
	content : "\e61d";
	}

.icon-minus:before {
	content : "\e15b";
	}

.icon-check-square:before {
	content : "\e906";
	}

.icon-home:before {
	content : "\e900";
	}

.icon-arrow-left:before {
	content : "\e901";
	}

.icon-arrow-right:before {
	content : "\e902";
	}

.icon-arrow-down:before {
	content : "\e903";
	}

.icon-circle:before {
	content : "\e904";
	}

.icon-square:before {
	content : "\e905";
	}

.icon-facebook:before {
	content : "\e916";
	}

/******************************************
[color]
******************************************/
/******************************************
[font]
******************************************/
html {
	font-size : 62.5%;
	}

body {
	font-size : 1.6em;
	}

/******************************************
[mixin]
******************************************/
/******************************************
[base]
******************************************/
/* 全項共通のパーツを想定 */
body {
	background : #ffffff;
	font-family : 'Montserrat', 'Noto Sans JP', 'メイリオ', 'Meiryo', 'ヒラギノ角ゴシック', 'Yu Gothic', 'Helvetica', 'Arial', sans-serif;
	letter-spacing : 1px;
	position : relative;

	overflow-x : hidden;
	}

body a {
	color : #333333;
	}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
li,
dl,
dt,
dd,
ol,
th,
td,
div,
a,
span,
input {
	font-size : 100%;
	font-weight : normal;

	font-style : normal;
	}

img {
	vertical-align : top;
	vertical-align : bottom;
	height : auto;
	max-width : 100%;
	max-width : 100%;
	border : none;
	}

main {
	width : 100%;
	margin : 0 auto;
	}

.inner {
	width : 1000px;
	margin : 0 auto;
	}

.inner-base {
	width : 1000px;
	margin : 0 auto;
	padding : 90px 0;
	}

.inner-bottom {
	width : 1000px;
	margin : 0 auto;
	padding : 0 0 90px;
	}

.btn-style, .btn01 a {
	display : block;
	text-decoration : none;
	text-align : center;
	line-height : 1;
	margin : 0 auto;
	cursor : pointer;
	}

.btn01 a {
	background-color : #e60012;
	width : 300px;
	color : #ffffff;
	font-weight : 500;
	padding : 18px 5px;
	position : relative;
	border-radius : 30px;
	}

.btn01 i {
	position : absolute;
	position : absolute;
	top : 50%;
	right : 5px;
	transform : translateY(-50%);
	}

.btn01 a:hover {
	background-color : #e60012;
	}

.btn01 a:hover:hover, .btn01 a:hover:active, .btn01 a:hover:focus {
	background-color : #ff1a2c;
	}

.half {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	width : 100%;
	}

.half li {
	width : 48%;
	}

.half-right {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	width : 100%;
	}

.half-right li {
	width : 48%;
	}

.half-right li:first-child {
	order : 2;
	}

.half-right li:last-child {
	order : 1;
	}

.pic-left {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	width : 100%;
	}

.pic-left li:first-child {
	width : 31%;
	margin : 0 3% 0 0;
	}

.pic-left li:last-child {
	width : 66%;
	}

.pic-right {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	width : 100%;
	}

.pic-right li:first-child {
	order : 2;
	width : 31%;
	margin : 0 0 0 3%;
	}

.pic-right li:last-child {
	order : 1;
	width : 66%;
	}

.triple {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	}

.triple li {
	width : 31%;
	}

.quad {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	}

.quad li {
	width : 23%;
	}

.fb {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	}

.txt-st {
	font-weight : bold;
	}

.mg01 {
	margin : 0 0 10px;
	}

.mg02 {
	margin : 0 0 20px;
	}

.mg03 {
	margin : 0 0 40px;
	}

.mg04 {
	margin : 0 0 60px;
	}

.mg05 {
	margin : 0 0 80px;
	}

.mg06 {
	margin : 0 0 100px;
	}

#pageTop a {
	display : block;
	width : 40px;
	position : fixed;
	bottom : 20px;
	right : 10px;
	z-index : 10;
	}

body {
	width : 375px;
	height : 100vh;
	}

#sb-site {
	width : 100%;
	height : 100%;
	}

@media screen and (max-width: 768px) {
	.inner {
		width : 94%;
		}
	.inner-base {
		width : 94%;
		margin : 0 auto;
		padding : 60px 0;
		}
	.inner-bottom {
		width : 94%;
		margin : 0 auto;
		padding : 0 0 60px;
		}
	}

@media screen and (max-width: 576px) {
	.inner {
		width : 90%;
		}
	.inner-base {
		width : 90%;
		margin : 0 auto;
		padding : 50px 0;
		}
	.inner-bottom {
		width : 90%;
		margin : 0 auto;
		padding : 0 0 50px;
		}
	.btn01 a {
		width : 80%;
		padding : 15px 0;
		}
	.half {
		display : block;
		}
	.half li {
		display : block;
		width : 100%;
		}
	.half li:first-child {
		margin : 0 0 15px;
		}
	.half-right li {
		display : block;
		width : 100%;
		}
	.half-right li:first-child {
		order : 1;
		margin : 0 0 20px;
		}
	.half-right li:last-child {
		order : 2;
		}
	.pic-left li:first-child {
		width : 100%;
		margin : 0 0 20px;
		}
	.pic-left li:last-child {
		width : 100%;
		}
	.pic-right {
		width : 100%;
		}
	.pic-right li:first-child {
		order : 1;
		width : 100%;
		margin : 0 0 20px;
		}
	.pic-right li:last-child {
		order : 2;
		width : 100%;
		}
	.triple {
		display : block;
		}
	.triple li {
		width : 100%;
		margin : 0 0 15px;
		}
	.fb {
		display : block;
		}
	.mg01 {
		margin : 0 0 10px;
		}
	.mg02 {
		margin : 0 0 15px;
		}
	.mg03 {
		margin : 0 0 20px;
		}
	.mg04 {
		margin : 0 0 40px;
		}
	.mg05 {
		margin : 0 0 60px;
		}
	.mg06 {
		margin : 0 0 80px;
		}
	}

/******************************************
[h-tag]
******************************************/
h1 {
	display : none;
	}

h2 {
	width : 220px;
	}

h3 {
	background : url(../img/pat-line.png) bottom repeat-x;
	background-size : auto 3px;
	color : #e60012;
	font-size : 2.8rem;
	font-weight : bold;
	margin : 0 0 40px;
	padding : 0 0 10px;
	}

h4 {
	background : url(../img/pat-line02.png) bottom repeat-x;
	background-size : auto 3px;
	color : #134bbd;
	font-size : 2.8rem;
	font-weight : bold;
	margin : 0 0 40px;
	padding : 0 0 10px;
	}

h5 {
	color : #e60012;
	font-size : 2.2rem;
	font-weight : bold;
	letter-spacing : 3px;
	margin : 0 0 20px;
	padding : 0 0 5px;
	border-bottom : 2px solid #e60012;
	}

h6 {
	color : #e60012;
	font-size : 2.0rem;
	font-weight : bold;
	letter-spacing : 2px;
	margin : 0 0 5px;
	}

@media screen and (max-width: 768px) {
	h2 {
		display : none;
		}
	}

@media screen and (max-width: 576px) {
	h3 {
		font-size : 2.2rem;
		margin : 0 0 25px;
		}
	h4 {
		font-size : 2.2rem;
		}
	h5 {
		font-size : 2.0rem;
		}
	}

/******************************************
[header]
******************************************/
header {
	background-color : #ffffff;
	width : 100%;
	}

.header-ad {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	align-items : center;
	padding : 15px 0;
	}

.header-ad span {
	display : block;
	background-color : #134bbd;
	color : #ffffff;
	text-align : center;
	padding : 5px 15px;
	border-radius : 30px;
	}

.header-ad p {
	color : #e60012;
	font-family : "Montserrat", sans-serif;
	font-size : 4.0rem;
	font-weight : 500;
	}

.header-ad i {
	font-size : 3.5rem;
	}

@media screen and (max-width: 1040px) {
	header {
		width : 1040px;
		}
	}

@media screen and (max-width: 768px) {
	header {
		width : 100%;
		height : 60px;
		}
	.header-ad,
	.line-blue {
		display : none;
		}
	}

/******************************************
[nav]
******************************************/
nav {
	background-color : #134bbd;
	color : #ffffff;
	}

nav ul {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	width : 1000px;
	margin : 0 auto;
	}

nav li a {
	display : block;
	width : calc(1000px/7);
	color : #ffffff;
	color : #d5eef4;
	text-align : center;
	text-align : center;
	font-size : 1.0rem;
	padding : 15px 0;
	position : relative;
	border-left : 1px solid rgba(255, 255, 255, 0.3);
	transition : 0.3s;
	}

nav li:first-child a {
	border : none;
	}

nav span {
	display : block;
	color : #ffffff;
	font-family : "Montserrat", sans-serif;
	font-size : 1.5rem;
	font-weight : 500;
	}

nav a:hover {
	background-color : #1554d4;
	}

nav a::after {
	content : '';
	background-color : #134bbd;
	width : 0;
	height : 1px;
	position : absolute;
	bottom : 0;
	left : 50%;
	        transform : translateX(-50%);
	-webkit-transform : translateX(-50%);
	transition : 0.3s;
	}

nav a:hover::after {
	width : 100%;
	}

#sp-menu {
	display : none;
	}

@media screen and (max-width: 768px) {
	nav {
		display : none;
		}
	#sp-menu {
		display : block;
		background-color : rgba(255, 255, 255, 0.9);
		width : 100%;
		height : 60px;
		padding : 5px;
		position : fixed;
		top : 0;
		left : 0;
		z-index : 100;
		z-index : 99995;
		}
	#sp-menu li:first-child {
		width : 50px;
		position : absolute;
		top : 5px;
		left : 5px;
		z-index : 99999;
		}
	#sp-menu li:nth-child(2) {
		height : 46px;
		position : absolute;
		top : 50%;
		left : 50%;
		z-index : 99997;
		transform : translate(-50%, -50%);
		}
	#sp-menu li:nth-child(2) img {
		width : auto;
		height : 100%;
		}
	#sp-menu li:last-child {
		width : 50px;
		position : absolute;
		top : 5px;
		right : 5px;
		z-index : 99998;
		}
	.sb-slidebar {
		background-color : #134bbd;
		position : relative;
		border-right : 1px solid rgba(255, 255, 255, 0.3);
		}
	.sb-slidebar li {
		color : #d5eef4;
		font-size : 1.0rem;
		border-bottom : 1px solid rgba(255, 255, 255, 0.3);
		}
	.sb-slidebar li span {
		display : block;
		color : #ffffff;
		font-size : 1.7rem;
		}
	.sb-slidebar li:first-child {
		display : block;
		padding : 5px;
		}
	.sb-slidebar li:first-child img {
		width : 50px;
		height : 50px;
		}
	.sb-slidebar a {
		display : block;
		color : #ffffff;
		padding : 15px 20px;
		}
	}

/******************************************
[index.html]
******************************************/
/* ブロック名＝ページ名、
ブロック内のコメント＝sectionやarticleを想定 */
#main-bg {
	background : url(../img/main.jpg) center no-repeat;
	background-size : cover;
	width : 100%;
	height : 0;
	padding-bottom : calc(960/3000*100%);
	}

.line-blue {
	background : url(../img/line-blue.jpg) repeat-x;
	background-size : auto 10px;
	width : 100%;
	height : 10px;
	}

.cont01-ttl {
	color : #e60012;
	text-align : center;
	font-size : 3.0rem;
	font-weight : bold;
	margin : 0 0 30px;
	}

.cont01-ttl span {
	display : block;
	width : 30%;
	margin : 0 auto;
	}

.cont01-txt {
	text-align : center;
	font-size : 1.8rem;
	line-height : 1.8;
	}

.topics02-red {
	background : url(../img/line-red.jpg) repeat-x;
	background-size : auto 10px;
	background-color : #ffffff;
	padding : 60px 30px 50px;
	border : 2px solid #e60012;
	}

.topics02-red .more-btn a {
	color : #e60012;
	}

.topics02-ttl {
	color : #e60012;
	text-align : center;
	font-size : 3.0rem;
	font-weight : bold;
	letter-spacing : 5px;
	margin : 0 0 10px;
	}

.topics02-blue {
	background : url(../img/line-blue.jpg) repeat-x;
	background-size : auto 10px;
	background-color : #ffffff;
	padding : 60px 30px 50px;
	border : 2px solid #134bbd;
	}

.topics02-blue .topics02-ttl {
	color : #134bbd;
	}

.topics02-blue .more-btn a {
	color : #134bbd;
	}

#insta {
	background-color : #e9f6f9;
	}

.insta-ttl {
	text-align : center;
	font-family : "Montserrat", sans-serif;
	font-size : 3.5rem;
	font-weight : 500;
	margin : 0 0 40px;
	}

.insta-ttl span {
	display : inline-block;
	vertical-align : text-bottom;
	width : 30px;
	margin : 0 10px 0 0;
	padding : 0 0 5px;
	}

.insta-li {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	justify-content : flex-start;
	}

.insta-li li {
	width : 24%;
	}

.insta-li li:not(:last-child) {
	margin : 0 1.2% 0 0;
	}

#cont03 .half li:nth-child(-n+2) {
	margin : 0 0 40px;
	}

#cont03 .half li a:hover {
	opacity : 0.8;
	}

#map iframe {
	vertical-align : bottom;
	}

footer {
	background-color : #134bbd;
	color : #ffffff;
	}

footer a {
	color : #ffffff;
	}

footer .fb {
	justify-content : center;
	align-items : center;
	padding : 60px 0;
	}

footer address {
	margin : 0 0 0 50px;
	padding : 0 0 0 50px;
	border-left : 1px solid rgba(255, 255, 255, 0.3);
	}

.footer-logo {
	width : 220px;
	}

.footer-tel {
	font-family : "Montserrat", sans-serif;
	margin : 10px 0 0;
	}

.footer-tel span {
	font-size : 3.0rem;
	font-weight : 500;
	line-height : 1;
	}

.footer-tel .tel-txt {
	display : inline-block;
	vertical-align : text-bottom;
	background-color : #ffffff;
	color : #134bbd;
	font-family : "Noto Sans JP", sans-serif;
	font-size : 1.2rem;
	margin : 0 8px 0 0;
	padding : 8px 15px;
	border-radius : 30px;
	}

.footer-menu {
	width : 100%;
	text-align : center;
	line-height : 1;
	margin : 0 0 15px;
	}

.footer-menu li {
	display : inline-block;
	padding : 0 10px;
	border-right : 1px solid rgba(255, 255, 255, 0.3);
	}

.footer-menu li:last-child {
	border : none;
	}

.footer-menu a:hover {
	color : #c1e6ee;
	}

.copyrt {
	color : #ffffff;
	text-align : center;
	font-size : 1.2rem;
	padding : 15px 0;
	border-top : 1px solid rgba(255, 255, 255, 0.3);
	}

@media screen and (max-width: 768px) {
	.cont01-ttl {
		font-size : 2.2rem;
		}
	.cont01-txt {
		font-size : 1.5rem;
		}
	footer address {
		margin : 0 0 0 30px;
		padding : 0 0 0 30px;
		}
	.footer-logo {
		width : 25%;
		}
	.footer-menu {
		display : none;
		}
	}

@media screen and (max-width: 576px) {
	#main-bg {
		background : url(../img/main-sp.jpg) center no-repeat;
		background-size : cover;
		padding-bottom : calc(560/750*100%);
		}
	.cont01-ttl {
		font-size : 2.0rem;
		margin : 0 0 20px;
		}
	.cont01-ttl span {
		width : 60%;
		}
	.cont01-txt {
		text-align : left;
		}
	.topics02-red,
	.topics02-blue {
		padding : 40px 20px 20px;
		}
	.insta-ttl {
		font-size : 3.0rem;
		margin : 0 0 30px;
		}
	.insta-ttl span {
		width : 26px;
		}
	.insta-li li {
		width : 48%;
		}
	.insta-li li:not(:last-child) {
		margin : 0 4% 15px 0;
		}
	.insta-li li:nth-child(even) {
		margin : 0 0 15px;
		}
	#cont03 .half li:nth-child(-n+3) {
		margin : 0 0 15px;
		}
	footer .fb {
		padding : 40px 0;
		}
	footer address {
		text-align : center;
		margin : 0;
		padding : 0;
		border : none;
		}
	.footer-logo {
		width : 50%;
		margin : 0 auto 20px;
		}
	.footer-tel {
		font-family : "Montserrat", sans-serif;
		margin : 10px 0 0;
		}
	.footer-tel span {
		font-size : 3.0rem;
		font-weight : 500;
		line-height : 1;
		}
	.footer-tel .tel-txt {
		display : block;
		width : 70%;
		margin : 0 auto 8px;
		}
	}

/******************************************
[topics]
******************************************/
.news-ttl {
	width : 15%;
	}

.news-right {
	width : 75%;
	}

#topics {
	background : url(../img/news-bg.jpg) no-repeat;
	background-size : 100% auto;
	background-color : #e9f6f9;
	padding : 60px 0;
	}

#topics li {
	margin : 0 0 15px;
	padding : 0 0 15px;
	border-bottom : 1px solid #c1e6ee;
	}

#topics li a {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	justify-content : flex-start;
	align-items : center;
	}

#topics li:last-child {
	border-bottom : none;
	}

#topics #topics_date {
	display : block;
	width : 6em;
	color : #134bbd;
	font-weight : 500;
	margin : 0 15px 0 0;
	}

#topics #topics_title {
	display : block;
	overflow : hidden;
	width : 600px;
	text-overflow : ellipsis;
	white-space : nowrap;
	}

#topics #topics_title:hover {
	text-decoration : underline;
	}

.more-btn a {
	display : block;
	color : #134bbd;
	text-align : right;
	font-family : "Montserrat", sans-serif;
	font-weight : bold;
	}

.more-btn a:hover {
	text-decoration : underline;
	}

#topics02 {
	background : url(../img/topcis02-bg.jpg) no-repeat;
	background-size : cover;
	}

#topics02 ul {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	justify-content : flex-start;
	}

#topics02 ul li {
	width : 31%;
	margin : 0 3% 0 0;
	}

#topics02 ul li:nth-child(3n) {
	margin : 0;
	}

#topics02 #topics_thumbnail,
#item-list #topics_thumbnail,
#movie-list #topics_thumbnail {
	display : block;
	overflow : hidden;
	height : 200px;
	margin : 0 0 10px;
	}

#topics02 #topics_thumbnail img,
#item-list #topics_thumbnail img,
#movie-list #topics_thumbnail img {
	width : 100%;
	height : 200px;
	font-family : "object-fit: cover;";

	object-fit : cover;
	}

#topics02 #topics_date,
#item-list #topics_date,
#movie-list #topics_date {
	display : block;
	color : #e60012;
	text-align : center;
	font-size : 1.2rem;
	font-weight : bold;
	}

#topics02 #topics_title,
#item-list #topics_title,
#movie-list #topics_title {
	display : block;
	overflow : hidden;
	text-overflow : ellipsis;
	white-space : nowrap;
	}

#topics02 .topics02-blue #topics_date,
#item-list .topics02-blue #topics_date,
#movie-list .topics02-blue #topics_date {
	color : #134bbd;
	}

#list li {
	margin : 0 0 15px;
	padding : 0 0 15px;
	border-bottom : 1px solid #dcdcdc;
	}

#list li a {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	justify-content : flex-start;
	align-items : center;
	}

#list #topics_date {
	display : block;
	width : 7em;
	color : #134bbd;
	font-weight : 500;
	margin : 0 10px 0 0;
	}

#list #topics_title {
	display : block;
	overflow : hidden;
	width : 750px;
	text-overflow : ellipsis;
	white-space : nowrap;
	}

#topics_paging {
	width : 100%;
	text-align : center;
	margin : 15px 0 0;
	padding : 8px 0;
	}

#topics_paging_previous,
#topics_paging_next {
	display : inline-block;
	background-color : #dcdcdc;
	width : 8em;
	color : #ffffff;
	font-size : 1.3rem;
	line-height : 3;
	margin : 0 5px;
	border-radius : 3px;
	}

#topics_paging_previous a,
#topics_paging_next a {
	display : inline-block;
	background-color : #134bbd;
	width : 8em;
	color : #ffffff;
	border-radius : 3px;
	}

#topics_paging_previous a:hover,
#topics_paging_next a:hover {
	background : #1b5fe8;
	}

#item-list ul,
#movie-list ul {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	justify-content : flex-start;
	margin : 0;
	}

#item-list ul li,
#movie-list ul li {
	width : 31%;
	margin : 0 3% 40px 0;
	}

#item-list ul li:nth-child(3n),
#movie-list ul li:nth-child(3n) {
	margin : 0 0 40px;
	}

#item-list #topics_thumbnail,
#movie-list #topics_thumbnail {
	display : block;
	}

#detail #topics_date {
	text-align : right;
	font-size : 1.3rem;
	margin : 0 0 20px;
	}

#detail #topics_title {
	color : #134bbd;
	font-size : 2.2rem;
	font-weight : bold;
	line-height : 1.3;
	margin : 0 0 20px;
	padding : 0 0 15px;
	word-break : break-all;
	border-bottom : 1px solid #134bbd;
	}

#detail #topics_body img[class^="topics_photo_"] {
	max-width : 100%;
	margin : 0 0 10px;
	}

#detail #topics_body {
	height : auto;
	max-width : 100%;
	min-height : 150px;
	margin : 0 0 30px;
	}

#detail #topics_body a {
	text-decoration : underline;
	}

.back-btn a {
	display : block;
	background-color : #134bbd;
	width : 8em;
	color : #ffffff;
	text-align : center;
	font-size : 1.3rem;
	line-height : 2;
	margin : 0 auto;
	padding : 8px 0;
	border-radius : 3px;
	}

.back-btn a:hover {
	background : #1b5fe8;
	}

@media screen and (max-width: 768px) {
	#topics #topics_title {
		width : 500px;
		}
	#list #topics_title {
		width : 80%;
		}
	#topics02 #topics_thumbnail,
	#item-list #topics_thumbnail,
	#movie-list #topics_thumbnail {
		height : 130px;
		}
	#topics02 #topics_thumbnail img,
	#item-list #topics_thumbnail img,
	#movie-list #topics_thumbnail img {
		height : 130px;
		}
	}

@media screen and (max-width: 576px) {
	.news-ttl {
		width : 40%;
		margin : 0 auto 20px;
		}
	.news-right {
		width : 100%;
		}
	#topics {
		padding : 40px 0;
		}
	#topics li {
		display : block;
		}
	#topics #topics_date {
		width : 100%;
		}
	#topics #topics_title {
		width : 100%;
		}
	#list li a {
		display : block;
		}
	#list #topics_date {
		margin : 0;
		}
	#list #topics_title {
		width : 100%;
		}
	#topics02 ul,
	#item-list ul,
	#movie-list ul {
		display : block;
		}
	#topics02 ul li,
	#item-list ul li,
	#movie-list ul li {
		width : 100%;
		margin : 0 0 30px;
		}
	#topics02 ul li:nth-child(3n),
	#item-list ul li:nth-child(3n),
	#movie-list ul li:nth-child(3n) {
		margin : 0 0 30px;
		}
	#topics02 #topics_thumbnail,
	#item-list #topics_thumbnail,
	#movie-list #topics_thumbnail {
		height : 200px;
		}
	#topics02 #topics_thumbnail img,
	#item-list #topics_thumbnail img,
	#movie-list #topics_thumbnail img {
		height : 200px;
		}
	#detail #topics_title {
		font-size : 2.0rem;
		}
	#detail02 #topics_thumbnail {
		width : 100%;
		margin : 0 auto 20px;
		}
	#detail02 #topics_title {
		font-size : 2.0rem;
		}
	}

/******************************************
[under common]
******************************************/
#pagettl {
	background : url(../img/pagettl-bg.jpg) center right no-repeat;
	background-size : cover;
	padding-bottom : calc(480/3000*100%);
	position : relative;
	}

#pagettl p {
	width : 100%;
	color : #ffffff;
	text-align : center;
	font-size : 1.5rem;
	letter-spacing : 0.16em;
	position : absolute;
	top : 50%;
	left : 50%;
	transform : translate(-50%, -50%);
	}

#pagettl span {
	display : block;
	font-size : 4.0rem;
	letter-spacing : 4px;
	}

.read-ttl {
	text-align : center;
	font-size : 2.5rem;
	font-weight : bold;
	margin : 0 0 30px;
	}

.white-bg {
	background-color : #ffffff;
	padding : 30px;
	border-radius : 10px;
	}

.gray-bg {
	background-color : #f7f7f7;
	padding : 30px;
	border-radius : 10px;
	}

.blue-bg {
	background-color : #e9f6f9;
	padding : 30px;
	border-radius : 10px;
	}

.note {
	font-size : 1.3rem;
	}

.bold {
	font-weight : bold;
	}

@media screen and (max-width: 768px) {
	#pagettl {
		background : url(../img/pagettl-bg.jpg) center right -100px no-repeat;
		background-size : auto 100%;
		padding-bottom : 30%;
		}
	#pagettl span {
		font-size : 3.0rem;
		}
	.white-bg,
	.gray-bg,
	.blue-bg {
		padding : 20px;
		}
	}

@media screen and (max-width: 576px) {
	#pagettl {
		height : 100px;
		}
	#pagettl p {
		letter-spacing : 0.1em;
		}
	.read-ttl {
		font-size : 2.2rem;
		margin : 0 0 25px;
		}
	.read-txt {
		text-align : left;
		font-size : 1.5rem;
		line-height : 1.6;
		}
	.white-bg,
	.gray-bg {
		padding : 15px;
		}
	}

/******************************************
[info.html]
******************************************/
#info01 .quad li {
	width : 220px;
	}

#info01 .quad li img {
	overflow : hidden;
	width : 220px;
	height : 220px;
	border : 8px solid #e9f6f9;
	border-radius : 300px;
	}

#info01 .quad p {
	color : #134bbd;
	text-align : center;
	font-weight : bold;
	margin : 5px 0 0;
	}

.info01-li {
	position : relative;
	}

.info01-li li:first-child {
	width : 60%;
	}

.info01-li li:last-child {
	background-color : rgba(255, 255, 255, 0.9);
	width : 50%;
	padding : 25px 0 10px 30px;
	position : absolute;
	top : 50px;
	right : 0;
	}

#info02 {
	background-color : #e9f6f9;
	}

#info02 #map {
	border : 3px solid #dcdcdc;
	}

.info02-txt {
	font-size : 1.8rem;
	margin : 0 0 30px;
	}

@media screen and (max-width: 768px) {
	#info01 .quad li {
		width : 170px;
		}
	#info01 .quad li img {
		width : 170px;
		height : 170px;
		border : 6px solid #e9f6f9;
		}
	.info01-li {
		display : block;
		}
	.info01-li li:first-child {
		width : 60%;
		margin : 0 auto 15px;
		}
	.info01-li li:last-child {
		width : 100%;
		padding : 0;
		position : static;
		}
	}

@media screen and (max-width: 576px) {
	#info01 .quad li {
		width : 160px;
		}
	#info01 .quad li img {
		width : 160px;
		height : 160px;
		}
	#info01 .quad li:nth-child(-n+2) {
		margin : 0 0 15px;
		}
	.info01-li li:first-child {
		width : 100%;
		margin : 0 0 15px;
		}
	}

/******************************************
[trimming.html]
******************************************/
#trimming01 .half-right {
	align-items : center;
	background-color : #e9f6f9;
	}

#trimming01 .half-right li:last-child {
	text-align : center;
	font-size : 2.8rem;
	letter-spacing : 1px;
	}

#trimming01 .half-right i {
	display : block;
	width : 40px;
	margin : 0 auto 10px;
	}

@media screen and (max-width: 576px) {
	#trimming01 .half-right li:last-child {
		font-size : 2.2rem;
		padding : 0 15px 30px;
		}
	#trimming01 .half-right i {
		width : 30px;
		}
	}

/******************************************
[hotel.html]
******************************************/
#hotel01 .pic-left {
	justify-content : center;
	align-items : center;
	}

#hotel01 .pic-left li:first-child {
	margin : 0 5% 0 0;
	}

#hotel01 .pic-left li:last-child {
	width : 52%;
	}

.hotel-subttl {
	color : #134bbd;
	font-size : 2.5rem;
	font-weight : bold;
	margin : 0 0 15px;
	}

.hotel-txt {
	font-size : 2.0rem;
	font-weight : bold;
	}

.hotel-txt span {
	color : #134bbd;
	font-weight : bold;
	}

@media screen and (max-width: 768px) {
	#hotel01 .pic-left li:first-child {
		margin : 0 3% 0 0;
		}
	#hotel01 .pic-left li:last-child {
		width : 65%;
		}
	}

@media screen and (max-width: 576px) {
	#hotel01 .pic-left li:first-child {
		margin : 0 0 15px;
		}
	#hotel01 .pic-left li:last-child {
		width : 100%;
		}
	.hotel-subttl {
		text-align : center;
		font-size : 2.2rem;
		}
	.hotel-txt {
		font-size : 1.8rem;
		}
	}

/******************************************
[training.html]
******************************************/
#training01 .pic-left {
	align-items : center;
	width : 48%;
	}

#training01 .pic-left li:first-child img {
	overflow : hidden;
	width : 136px;
	height : 136px;
	border : 4px solid #ffffff;
	border-radius : 136px;
	}

#training01 .pic-left li:last-child {
	font-size : 1.3rem;
	}

.training01-subttl {
	color : #134bbd;
	font-size : 1.8rem;
	font-weight : bold;
	margin : 0 0 5px;
	}

.point-li {
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	align-items : center;
	width : 90%;
	margin : 0 auto;
	}

.point-li li:first-child {
	width : 32%;
	}

.point-li li:last-child {
	width : 63%;
	}

.point-dl dd {
	background-color : #e9f6f9;
	font-size : 2.0rem;
	padding : 12px 10px;
	border-radius : 5px;
	}

.point-dl dd i {
	vertical-align : text-bottom;
	color : #134bbd;
	font-size : 2.6rem;
	margin : 0 3px 0 0;
	}

.point-dl dd:not(:last-child) {
	margin : 0 0 15px;
	}

#training02 {
	background-color : #e9f6f9;
	}

@media screen and (max-width: 768px) {
	#training01 .fb {
		display : block;
		}
	#training01 .pic-left {
		width : 100%;
		}
	#training01 .pic-left li:first-child {
		width : 136px;
		}
	#training01 .pic-left li:last-child {
		width : 75%;
		}
	#training01 .pic-left:first-of-type {
		margin : 0 0 20px;
		}
	.point-li {
		width : 100%;
		}
	.point-dl dd {
		font-size : 2.0rem;
		}
	.point-dl dd i {
		font-size : 2.2rem;
		}
	}

@media screen and (max-width: 576px) {
	#training01 .pic-left {
		display : block;
		}
	#training01 .pic-left li:first-child {
		width : 100%;
		text-align : center;
		margin : 0 auto 5px;
		}
	#training01 .pic-left li:first-child img {
		width : 160px;
		height : 160px;
		border-radius : 160px;
		}
	#training01 .pic-left li:last-child {
		width : 100%;
		}
	.training01-subttl {
		text-align : center;
		}
	.point-li {
		display : block;
		}
	.point-li li:first-child {
		width : 84%;
		margin : 0 0 20px 10%;
		}
	.point-li li:last-child {
		width : 100%;
		}
	.point-dl dd {
		text-align : center;
		font-size : 2.0rem;
		margin : 0 0 30px;
		padding : 15px 0;
		}
	.point-dl dd i {
		display : block;
		text-align : center;
		font-size : 3.5rem;
		margin : 0 0 5px;
		}
	}

/******************************************
[table]
******************************************/
.tbl-ttl {
	background-color : #134bbd;
	color : #ffffff;
	font-weight : bold;
	padding : 15px;
	}

.tbl01 {
	width : 100%;
	border : 0;
	}

.tbl01 th {
	min-width : 4.5em;
	text-align : left;
	font-weight : bold;
	line-height : 1.2;
	padding : 18px 10px;
	border-bottom : 1px solid #dcdcdc;
	}

.tbl01 td {
	padding : 18px 10px;
	border-bottom : 1px solid #dcdcdc;
	}

.tbl01 td p {
	font-size : 1.3rem;
	}

.tbl01 tr:last-child th,
.tbl01 tr:last-child td {
	border-bottom : none;
	}

.tbl02 {
	vertical-align : middle;
	background-color : #ffffff;
	width : 100%;
	text-align : left;
	line-height : 1.5;

	border-collapse : collapse;
	}

.tbl02 tr:nth-child(odd) {
	background : #f7f7f7;
	}

.tbl02 th {
	font-weight : bold;
	padding : 15px 10px;
	}

.tbl02 td {
	width : 7em;
	text-align : right;
	padding : 15px 10px 15px 0;
	}

.tbl02 span {
	font-size : 1.2rem;
	}

.tbl03 {
	width : 100%;
	}

.tbl03 th {
	text-align : left;
	font-weight : bold;
	padding : 15px 10px;
	border-bottom : 1px solid #dcdcdc;
	}

.tbl03 td {
	padding : 15px 10px;
	border-bottom : 1px solid #dcdcdc;
	}

.tbl04 {
	width : 100%;
	border-top : 1px solid #dcdcdc;
	}

.tbl04 th {
	background-color : #f7f7f7;
	text-align : left;
	line-height : 1.2;
	padding : 15px;
	border-bottom : 1px solid #dcdcdc;
	}

.tbl04 td {
	padding : 15px;
	border-bottom : 1px solid #dcdcdc;
	}

.tbl-note {
	text-align : right;
	font-size : 1.3rem;
	margin : 5px 0 0;
	padding-left : 1em;
	text-indent : -1em;
	}

@media screen and (max-width: 576px) {
	.tbl-ttl {
		padding : 10px;
		}
	.tbl01 th {
		padding : 10px 5px;
		}
	.tbl01 td {
		padding : 10px 5px;
		}
	.tbl02 th {
		min-width : 6em;
		padding : 10px 0 10px 10px;
		}
	.tbl02 td {
		padding : 10px 5px;
		}
	.tbl03 th {
		display : block;
		width : 100%;
		padding : 10px 0 0;
		border-bottom : none;
		}
	.tbl03 td {
		display : block;
		width : 100%;
		padding : 5px 0 10px;
		}
	.tbl04 th {
		min-width : 6em;
		padding : 15px 10px;
		}
	.tbl04 td {
		padding : 15px 10px;
		}
	}

/******************************************
[anker-link]
******************************************/
@-webkit-keyframes modify {
	0% {
		margin-top : -120px;
		padding-top : 120px;
		}
	100% {
		margin-top : 0;
		padding-top : 0;
		}
	}

@keyframes modify {
	0% {
		margin-top : -120px;
		padding-top : 120px;
		}
	100% {
		margin-top : 0;
		padding-top : 0;
		}
	}

#activity03 {
	margin-top : -120px;
	padding-top : 120px;
	}

/******************************************
[改行切り替え]
******************************************/
.sp {
	display : none;
	}

.pc {
	display : block;
	}

@media screen and (max-width: 576px) {
	.sp {
		display : block;
		}
	.pc {
		display : none;
		}
	}
