html{
	font-size:14px;
}
body{
	background-color:#efebe0;
	padding:0;
	margin:0;
	font-family: "Zen Kaku Gothic New","ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
	font-weight: 500;
}
img{
	max-width:100%;
}
h1,h2,h3{
	margin:0;
}
a{
	text-decoration:none;
	color:#000;
}
ul{
	list-style:none;
	padding:0;
	margin:0;
}
header,main{
	max-width:1220px;
	margin:0 auto;
}
header {
    position: absolute;
    z-index: 10;
/*    display: flex;
    justify-content: space-between;*/
    width: 100%;
    top: 0;
    left: 50%;
    transform: translate(-50%,0);
    padding: 0 30px;
    box-sizing: border-box;
}
header:before, header:after {
    content: "";
    display: table;
}
header:after {
    clear: both;
}
.box_logo {
    background-color: #efebe0;
    padding: 21px 21px 17px 0;
    float:left;
}
.box_logo img {
    display: block;
    margin: 0 auto 14px;
}
.box_logo a:last-child img {
    margin-bottom: 0;
}
nav{
	float:right;
    background-color: #efebe0;
    padding: 32px 0 16px 22px;
}
nav ul {
    display: flex;
}
nav ul li {
    text-align: center;
}
nav ul li a {
    color: inherit;
    text-decoration: none;
}
nav ul li .menu_ja {
    border-left: 1px solid #000;
    margin-top: 0.2em;
    padding: 0 1em;
}
nav ul li:last-child .menu_ja{
    border-right: 1px solid #000;
}

main {
    padding-top: 53px;
}
section{
	padding:0 30px 132px;
}
.wrap_slider {
    position: relative;
}
.wrap_slider .ex_title_main {
    position: absolute;
    top: 40%;
    left: 70px;
    width: 39%;
}
.wrap_slider .caution_main.reserve {
    position: absolute;
    right: 5.5%;
    bottom: 12%;
    background-color: #fff;
    font-size: 1.43rem;
    font-weight: bold;
    padding: 0.6em 1em .5em;
}
.wrap_slider .caution_main.reserve span.ruby_dot {
    position: relative;
}
.wrap_slider .caution_main.reserve span.ruby_dot:before {
    position: absolute;
    content: "";
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background-color: #000;
    right: 50%;
    top: 0;
    transform: translate(50%, -200%);
}
#slider_top{
	box-sizing: border-box;
    width: calc(100% - 60px);
    margin: 0 auto 86px;
}
#slider_top.slick-initialized .slick-slide {
    height: 70vh;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.slick-prev, .slick-next{
	width:auto;
	height:auto;
	-webkit-transform: translate(0, -100%);
	transform: translate(0, -100%);
}
.slick-prev:before, .slick-next:before{
	display:none;
}
h2{
	font-size:1.875rem;
	text-align:center;
	padding-bottom:50px;
}
.outline_data{
	text-align:center;
}
section.ex_point {
    max-width: 950px;
    margin: 0 auto;
/*    background-color: #e7e0d0;
    padding: 32px 60px;
    box-sizing: border-box;*/
}
.ex_point h3 {
    background-color: #e7e0d0;
    padding: 32px 60px 0;
    font-size:1.5rem;
}
#slider_point {
    padding: 0px 60px 32px;
    background-color: #e7e0d0;
}
#slider_point h4{
	font-size:1.43rem;
	text-decoration:underline;
}
#slider_point p{
	font-size:1.14rem;
	line-height:1.75em;
	margin: 0;
}
#slider_point.slick-initialized .slick-slide{
	display:flex;
	justify-content: space-between;
	height: auto;
}
#slider_point.slick-initialized .slick-slide .point_thumb {
    width: 60%;
    padding-left: 2px;
}
#slider_point.slick-initialized .slick-slide .point_text {
    width: 37%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.slick-prev {
    left: 20px;
}
.slick-next {
    right: 20px;
}
.ex_point .slick-dots{
	left:0;
}
.mov .box_mov {
	width: 100%;
	max-width:700px;
    margin:0 auto 26px;
    aspect-ratio: 16 / 9;
}
.mov iframe {
    top: 0;
    width: 100%;
    height: 100%;
}
.wrap_btn_ex_concept{
	text-align:center;
}
.mov .btn_ex_concept {
    display: inline-block;
    text-align: center;
    font-size: 1.5rem;
    text-decoration: underline;
}
.mov .btn_ex_concept:hover {
    cursor:pointer;
}
section#contents {
    max-width: 950px;
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
}
#contents ul.category_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 55px;
}
#contents ul.category_list li {
    border: 1px solid #8c8c8c;
    padding: 0.3em 1em;
    border-radius: 50px;
    margin: 0 5px 10px;
    color: #8c8c8c;
}
#contents ul.category_list li:hover {
    background-color: #8c8c8c;
    color: #fff;
    cursor:pointer;
}
#contents ul.category_list li.now {
    background-color: #8c8c8c;
    color: #fff;
}
#contents ul.contents_list {
    display: flex;
    flex-wrap: wrap;
    padding-left: 10px;
    padding-right: 10px;
}
#contents ul.contents_list li {
	display:block;
    width: calc((100% - 120px) / 3);
    margin-right: 20px;
    margin-left: 20px;
    margin-bottom: 46px;
    background-color: #fff;
    padding: 20px;
    box-sizing: border-box;
    animation: display .5s ease 0s 1 normal forwards running;
}
@keyframes display {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#contents ul.contents_list li.off {
    display: none;
    opacity:0;
}
#contents ul.contents_list li .ct_title {
    font-size: 1.21rem;
    line-height: 1.7em;
    margin-bottom: 0.7em;
}
#contents ul.contents_list li .ct_title a {
    text-decoration: underline;
}
#contents ul.contents_list li .box_list_thumb{
	margin-bottom:10px;
}
#contents ul.contents_list li:nth-child(3n) {
/*    margin-right: 0;*/
}
#contents ul.ct_category {
    display: flex;
    flex-wrap: wrap;
    color: #8c8c8c;
    font-size: 0.73rem;
    margin-bottom: 1em;
}
#contents ul.ct_category li{
	width:auto;
	margin:0 .5em .7em 0;
	padding:.3em .5em;
	border:1px solid #8c8c8c;
	border-radius:50px;
}
#contents ul.contents_list li p {
    color: #717171;
    line-height: 1.75em;
    margin: 0;
    margin-bottom:.6em;
}
#contents ul.contents_list li date {
    color: #717171;
    text-align: right;
    display: block;
}
section#access{
	padding-left:0;
	padding-right:0;
	padding-bottom:0;
}
section#access iframe{
	width:100%;
	height:100%;
}
.footer_ma{
	margin-top:0;
    display: flex;
    justify-content: center;
}
.box_foot{
	float:none;
}
.footer_ma_rel,.box_foot_ma_last{
	background-color:#fff;
	border-top: 1px solid #999;
}

.wrap_concept {
	display:none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    background-color: rgba(255,255,255,.95);
    z-index: 100;
    top: 0;
    left: 0;
    padding: 120px 15px 40px;
    box-sizing: border-box;
    font-size: 1.57rem;
}
.wrap_concept .btn_close {
    position: absolute;
    top: 50px;
    left: 50px;
    width: 33px;
    height: 33px;
}
.wrap_concept .btn_close:before,.wrap_concept .btn_close:after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #000;
    display: block;
    transform-origin: center;
    position: absolute;
    top: 50%;
    right: 50%;
}
.wrap_concept .btn_close:before {
    transform: translate(50%,50%) rotate(45deg);
}
.wrap_concept .btn_close:after {
    transform: translate(50%,50%) rotate(-45deg);
}
.wrap_concept .box_concept{
	max-width:700px;
	margin:0 auto;
	height:100%;
	overflow:auto;
}
.wrap_concept .btn_lang {
    font-size: 1.43rem;
    text-align: right;
    color: #000;
    padding-bottom: 1em;
}
.wrap_concept .box_concept .concept_title{
	font-size:2.36rem;
	padding-bottom: 1em;
}
.wrap_concept .box_concept p {
    line-height: 2.09em;
    margin: 0;
    padding-bottom: 2em;
}
.wrap_concept span {
    color: #b9baba;
}
.wrap_concept span.now {
    color: #000;
}
.wrap_concept .signiture {
    text-align: right;
    font-size: 1.5rem;
    line-height: 2.09em;
    padding-bottom: 3em;
}
.wrap_concept .annotation {
    font-size: 1.29rem;
    line-height: 1.67em;
}

@media screen and (max-width:840px){
	#slider_top.slick-initialized .slick-slide {
	    height: 40vh;
	}
}

@media screen and (max-width:667px){
header {
    padding: 0 15px;
    position: static;
    transform: translate(0,0);
}
header .box_logo {
    width: 15%;
    padding: 10px 0 17px 0;
}
header nav {
    font-size: .85rem;
}

	#slider_top {
    width: calc(100% - 30px);
}
main{
	padding-top:0;
}
#slider_top .slick-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 100% 50%;
}
.wrap_slider .ex_title_main {
    width: 80%;
    left: 30px;
    top: 70px;
}
.wrap_slider .caution_main.reserve {
    font-size: 1.1rem;
}
	section {
    padding: 0 15px 80px;
}
	.ex_point h3 {
	    padding: 20px 20px;
	}
	#slider_point {
    padding: 0px 40px 20px;
}
#slider_point.slick-initialized .slick-slide {
    display: block;
}
#slider_point.slick-initialized .slick-slide .point_thumb {
    width: 100%;
}
#slider_point.slick-initialized .slick-slide .point_text {
    width: 100%;
}
.slick-prev {
    left: 15px;
}
.slick-next {
    right: 15px;
}
	#contents ul.contents_list {
	    display: block;
	}
	#contents ul.contents_list > li {
	    width: 100%;
	    margin-left: 0;
		margin-right: 0;
	}
	.wrap_concept {
    padding: 60px 15px 40px;
}
.wrap_concept .btn_lang {
    font-size: 1.2rem;
}
.wrap_concept .box_concept .concept_title {
    font-size: 1.8rem;
}
.wrap_concept .box_concept p {
    font-size: 1rem;
}
.wrap_concept .signiture {
    font-size: .9rem;
}
.wrap_concept .annotation {
    font-size: .85rem;
}
	.wrap_concept .btn_close {
	    top: 20px;
	    left: 20px;
	}
	
	.footer_ma{
		display:none;
	}
	.footer_ma_sub {
	    padding: 12px 0;
	}
	.footer_ma_sub > .footer_ma_sub_text {
	    display: block;
	}
	.footer_ma_sub > .footer_ma_sub_text > a {
	    float: none;
	    padding: 0.5em 0;
	}
}
