@charset "utf-8";
/* ------------------------------
ページ構成
------------------------------ */

/*フローティングバナー*/
.cp_floating-bnr {
width: 15%;
max-width: 120px;
min-width: 80px;
position: fixed;
bottom: 40px;
left: 0;
z-index: 200;
text-align: left;
}

/*スライダー*/
.slider {
  margin-inline: auto;
  overflow: hidden; /* 画像がはみ出ないようにする */
}
.slick-img img {
  width: 100%;
  height: 672px;
object-fit: cover;
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15); /* 拡大率 */
  }
}
.add-animation {
  animation: zoomUp 10s linear 0s normal both;
}

.cp_main {
position: relative;
}

.cp_main .cp_logo {
width: 50%;
max-width: 488px;
height: auto;
position: absolute;
top: 150px;
left: 4%;
}

.slick-img {
position: relative;
}

.slick-img p {
position: absolute;
bottom: 8%;
right: 10%;
padding: 17px 20px;
background: #5BB0D5;
color: #FFFFFF;
width: 260px;
font-size: 220%;
letter-spacing: 8px;
text-align: center;
}

.slick-img p.caption02,
.slick-img p.caption04 {
left: 10%;
}

/*------------------------------------------------*/

.cp_nav {
background: #E1F1FF;
}

.cp_nav .inner {
width: 92%;
max-width: 1050px;
margin: 0 auto;
padding: 30px 0;
}

.cp_nav ul {
display: flex;
justify-content: space-between;
list-style: none;
margin: 0;
padding: 0;
}

.cp_nav li {
width: 13.619%;
}

.cp_nav li img {
width: 100%;
height: auto;
}

/*------------------------------------------------*/

#contents.cultural_property {
width: 100%;
max-width: 100%;
font-size: 18px;
line-height: 180%;
font-feature-settings: "palt";
text-align: justify;
}

#contents.cultural_property .bread {
width: 92%;
max-width: 1050px;
margin: 0 auto 80px;
font-size: 86%;
line-height: 160%;
}

.cultural_property p,
.cultural_property ul,
.cultural_property li,
.cultural_property dl,
.cultural_property dt,
.cultural_property dd,
.cultural_property h3,
.cultural_property h4,
.cultural_property h5,
.cultural_property figure {
margin: 0;
padding: 0;
list-style: none;
}

.cultural_property img {
width: auto;
height: auto;
max-width: 100%;
}

.cultural_property .title {
margin-bottom: 35px;
font-size: 260%;
font-weight: bold;
line-height: 120%;
position: relative;
}

.cultural_property .cp_block01 .title {
color: #B37916;
padding-left: 85px;
}

.cultural_property .cp_block02 .title {
color: #2A9FCC;
padding-left: 80px;
}

.cultural_property .cp_block03 .title {
color: #9A4C87;
padding-left: 65px;
}

.cultural_property .cp_block04 .title {
color: #723712;
padding-left: 70px;
}

.cultural_property .cp_block05 .title {
color: #E05683;
padding-left: 70px;
}

.cultural_property .title p {
color: #CCCCCC;
font-size: 36%;
margin-bottom: 5px;
line-height: 100%;
}

.cultural_property .title img {
width: auto;
height: 70px;
position: absolute;
left: 0;
top: 0;
bottom: 0;
margin: auto 0;
}

.cultural_property a:hover {
opacity: 0.8;
transition: 0.2s;
}

.cultural_property .btn1 {
border: solid 1px #333333;
border-radius: 60px;
font-size: 90%;
line-height: 140%;
display: inline-block;
position: relative;
text-align: center;
}

.cultural_property .btn1 a {
padding: 12px 30px 12px 40px;
display: block;
text-decoration: none;
color: #333333;
}

.cultural_property .btn1:before {
content: "";
position: absolute;
top: 50%;   /* 縦軸をセンタリングする */ 
left: 20px;
transform: translateY(-50%);   /* 縦軸をセンタリングする */  
border: 5px solid transparent;
border-left: 6px solid #333333;   /* 好みで色を変えてください */ 
}

/*------------------------------------------------*/

.cultural_property .cp_block01 {
width: 92%;
max-width: 1050px;
margin: 0 auto 100px;
}

.cultural_property .cp_block01 .headline {
margin-bottom: 35px;
color: #FB5A18;
font-size: 180%;
font-weight: bold;
line-height: 160%;
}

.cultural_property .cp_block01 .about_img {
float: right;
margin-top: -240px;
margin-left: 30px;
}


.cultural_property .cp_block01 .works_btn {
background: #2C9ADE;
border-radius: 60px;
font-size: 100%;
line-height: 150%;
display: inline-block;
position: relative;
text-align: center;
margin-left: 38%;
margin-top: 34px;
}

.cultural_property .cp_block01 .works_btn a {
padding: 15px 50px 15px 60px;
display: block;
text-decoration: none;
color: #FFFFFF;
}

.cultural_property .cp_block01 .works_btn:before {
content: "";
position: absolute;
top: 50%;   /* 縦軸をセンタリングする */ 
left: 20px;
transform: translateY(-50%);   /* 縦軸をセンタリングする */  
border: 5px solid transparent;
border-left: 6px solid #FFFFFF;   /* 好みで色を変えてください */ 
}


/*------------------------------------------------*/

.cultural_property .cp_block02 {
margin-bottom: 100px;
padding: 40px 0 70px;
background: linear-gradient(105deg, #FFFFFF 0%, #FFFFFF 40%, #E1F1FF 40%, #E1F1FF 100%);
}

.cultural_property .cp_block02 .inner {
width: 92%;
max-width: 1050px;
margin: 0 auto;
position: relative;
}

.cultural_property .cp_block02 ul {
display: flex;
justify-content: space-between;
}

.cultural_property .cp_block02 li {
width: 20.4%;
font-size: 90%;
line-height: 160%;
}

.cultural_property .cp_block02 li img {
margin-bottom: 5px;
width: 100%;
}

.cultural_property .cp_block02 .btn1 {
position: absolute;
right: 0;
bottom: -85px;
}

/*------------------------------------------------*/

.cultural_property .cp_block03 {
width: 92%;
max-width: 1050px;
margin: 0 auto 100px;
}

.cultural_property .cp_block03 .inner {
display: flex;
justify-content: space-between;
}

.cultural_property .cp_block03 .inbox {
width: 48%;
border-radius: 5px;
box-shadow: 2px 2px 4px #CCCCCC;
background: #FEF8DA;
}

.cultural_property .cp_block03 .inbox img {
width: 100%;
}

.cultural_property .cp_block03 dl {
padding: 50px 20px 20px;
box-sizing: border-box;
border-radius: 0 0 5px 5px;
position: relative;
}

.cultural_property .cp_block03 dt {
width: 250px;
background: #5BB0D5;
border-radius: 5px;
color: #FFFFFF;
font-size: 170%;
position: absolute;
top: -27px;
}

.cultural_property .cp_block03 dt a {
width: 100%;
text-decoration: none;
color: #FFFFFF;
display: block;
padding: 12px 15px;
}

.cultural_property .cp_block03 ul {
display: flex;
flex-wrap: wrap;
}

.cultural_property .cp_block03 li {
width: 50%;
margin-bottom: 10px;
padding-left: 24px;
position: relative;
box-sizing: border-box;
line-height: 140%;
}

.cultural_property .cp_block03 li a {
color: #333333;
text-decoration: none;
}

.cultural_property .cp_block03 li:before {
  content: '';
  width: 18px;
  height: 18px;
  background: #F48431;
  border-radius: 50%;
  position: absolute;
  top: 4px;
  left: 0;
}

.cultural_property .cp_block03 li:after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 5px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 9px;
  left: 7px;
}

/*------------------------------------------------*/

.cultural_property .cp_block04 {
margin-bottom: 120px;
padding: 40px 0;
background: linear-gradient(105deg, #E1F1FF 0%, #E1F1FF 60%, #FFFFFF 60%, #FFFFFF 100%);
}

.cultural_property .cp_block04 .inner {
width: 92%;
max-width: 1050px;
margin: 0 auto;
height: 500px;
position: relative;
}

.cultural_property .cp_block04 .learn_img03 {
position: absolute;
right: 0;
top: 20px;
}

.cultural_property .cp_block04 .inbox1 {
width: 48%;
float: left;
}

.cultural_property .cp_block04 .inbox1 img {
float: left;
border: solid 1px #CCCCCC;
}

.cultural_property .cp_block04 .inbox1 .txt {
float: right;
width: calc(100% - 220px);
}

.cultural_property .cp_block04 .txt .sub_title {
margin-bottom: 15px;
font-size: 130%;
}

.cultural_property .cp_block04 .txt p {
margin-bottom: 5px;
font-size: 90%;
line-height: 160%;
}

.cultural_property .cp_block04 .btnbox {
margin-top: 20px;
}

.cultural_property .cp_block04 .btn1 {
float: left;
width: 46%;
box-sizing: border-box;
margin-right: 2%;
}

.cultural_property .cp_block04 .inbox2 {
width: 50%;
border: solid 2px #5BB0D5;
padding: 20px;
background-color: rgba(255, 255, 255, 0.5);
box-sizing: border-box;
position: absolute;
bottom: -100px;
right: 0;
}

.cultural_property .cp_block04 .inbox2 img {
float: right;
}

.cultural_property .cp_block04 .inbox2 .txt {
float: left;
width: calc(100% - 220px);
}

/*------------------------------------------------*/

.cultural_property .cp_block05 {
width: 92%;
max-width: 1050px;
margin: 0 auto 100px;
}

.cultural_property .cp_block05 .inbox {
display: flex;
align-items: flex-start;
}

.cultural_property .cp_block05 .btn2 {
background: #2C9ADE;
border-radius: 60px;
font-size: 90%;
line-height: 140%;
display: inline-block;
position: relative;
text-align: center;
margin-left: 20px;
margin-top: 34px;
}

.cultural_property .cp_block05 .btn2 a {
padding: 12px 30px 12px 40px;
display: block;
text-decoration: none;
color: #FFFFFF;
}

.cultural_property .cp_block05 .btn2:before {
content: "";
position: absolute;
top: 50%;   /* 縦軸をセンタリングする */ 
left: 20px;
transform: translateY(-50%);   /* 縦軸をセンタリングする */  
border: 5px solid transparent;
border-left: 6px solid #FFFFFF;   /* 好みで色を変えてください */ 
}

.cultural_property .cp_block05 .sub_title {
padding: 14px 20px;
margin-bottom: 20px;
color: #FFFFFF;
font-weight: bold;
font-size: 110%;
background: #226AB6;
border-radius: 5px;
}

.cultural_property .cp_block05 dl {
margin-bottom: 20px;
}

.cultural_property .cp_block05 dt {
padding: 14px 20px 14px 75px;
color: #FFFFFF;
font-weight: bold;
font-size: 110%;
line-height: 160%;
background: #5BB0D5;
border-radius: 5px 5px 0 0;
text-indent: -55px;
}

.cultural_property .cp_block05 dt:before {
  content: '';/*何も入れない*/
  display: inline-block;
  width: 45px;/*画像の幅*/
  height: 41px;/*画像の高さ*/
  background-image: url(../images/q.png);
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 10px;
  vertical-align: middle;
}

.cultural_property .cp_block05 dd {
padding: 14px 20px 14px 68px;
border-radius: 0 0 5px 5px;
border: solid 2px #5BB0D5;
font-size: 90%;
line-height: 160%;
text-indent: -48px;
}

.cultural_property .cp_block05 dd:before {
  content: '';/*何も入れない*/
  display: inline-block;
  width: 38px;/*画像の幅*/
  height: 35px;/*画像の高さ*/
  background-image: url(../images/a.png);
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 10px;
  vertical-align: middle;
}

.cultural_property .cp_block05 dd li {
text-indent: -1.25em;
padding-left: 1.25em;
}

.cultural_property .cp_block05 .btn3box {
margin-bottom: 60px;
display: flex;
justify-content: center;
}

.cultural_property .cp_block05 .btn3 {
width: 44%;
margin: 0 15px;
background: linear-gradient(315deg, transparent 8px, #2C9ADE 8px);
line-height: 140%;
font-size: 110%;
font-weight: bold;
text-align: center;
}

.cultural_property .cp_block05 .btn3 a {
padding: 18px 30px;
display: block;
text-decoration: none;
color: #FFFFFF;
}

/*------------------------------------------------*/

.cultural_property .cp_block06 {
width: 92%;
max-width: 1050px;
margin: 0 auto 100px;
}



/* タブレットレイアウト : 768 px ～ 959 px*/
@media screen and (max-width:959px)
{
.slick-img img {
  height: 560px;
}

.slick-img p {
width: 180px;
font-size: 180%;
letter-spacing: 6px;
}

/*------------------------------------------------*/

.cultural_property .cp_block01 .about_img {
margin-top: -200px;
}

/*------------------------------------------------*/

.cultural_property .cp_block03 ul {
display: block;
}

.cultural_property .cp_block03 li {
width: 100%;
}

/*------------------------------------------------*/

.cultural_property .cp_block04 {
margin-bottom: 100px;
}

.cultural_property .cp_block04 .inner {
height: auto;
}

.cultural_property .cp_block04 .learn_img03 {
top: 160px;
}

.cultural_property .cp_block04 .btn1 {
width: 280px;
}

.cultural_property .cp_block04 .inbox1 {
width: 100%;
float: none;
margin-bottom: 40px;
}

.cultural_property .cp_block04 .inbox2 {
width: 80%;
position: static;
float: right;
}

/*------------------------------------------------*/

.cultural_property .cp_block05 .title {
margin-bottom: 20px;
}

.cultural_property .cp_block05 .inbox {
display: block;
margin-bottom: 40px;
}

.cultural_property .cp_block05 .btn2 {
margin-top: 0;
margin-left: 0;
margin-right: 15px;
}

}


	
/* スマホ設定  768 以下*/
@media screen and (max-width:767px)
{
.slick-img img {
  height: 300px;
}

.cp_main .cp_logo {
width: 80%;
top: 12px;
left: 0;
right: 0;
margin: 0 auto;
}

.slick-img p {
padding: 10px 20px;
width: 120px;
letter-spacing: 2px;
font-size: 140%;
}

/*------------------------------------------------*/

.cp_nav .inner {
padding: 30px 0 10px;
}

.cp_nav ul {
flex-wrap: wrap;
}

.cp_nav li {
width: 32%;
margin-bottom: 20px;
}

/*------------------------------------------------*/

#contents.cultural_property .bread {
margin: 0 auto 40px;
}

.cultural_property .title {
padding-left: 85px;
margin-bottom: 35px;
font-size: 220%;
font-weight: bold;
position: relative;
}

.cultural_property .title img {
width: auto;
height: 70px;
position: absolute;
left: 0;
top: 0;
bottom: 0;
margin: auto 0;
}

/*------------------------------------------------*/

.cultural_property .cp_block01 .headline {
font-size: 140%;
margin-bottom: 20px;
}

.cultural_property .cp_block01 .about_img {
margin: 0 auto 20px;
float: none;
}

/*------------------------------------------------*/

.cultural_property .cp_block02 {
padding: 40px 0;
}

.cultural_property .cp_block02 ul {
flex-wrap: wrap;
}

.cultural_property .cp_block02 li {
width: 46%;
margin-bottom: 30px;
}

.cultural_property .cp_block02 .btn1 {
right: 0;
transform: translate(-50%, -50%);
}

/*------------------------------------------------*/

.cultural_property .cp_block03 .inner {
display: block;
}

.cultural_property .cp_block03 .inbox {
width: 100%;
margin-bottom: 20px;
}

/*------------------------------------------------*/

.cultural_property .cp_block04 .learn_img03 {
top: -100px;
width: 160px;
right: 20px;
}

.cultural_property .cp_block04 .inbox1 {
text-align: center;
}

.cultural_property .cp_block04 .inbox1 img {
float: none;
margin-bottom: 20px;
}

.cultural_property .cp_block04 .inbox1 .txt {
float: none;
width: 100%;
}

.cultural_property .cp_block04 .btn1 {
float: none;
margin-right: 0;
margin-bottom: 15px;
}

.cultural_property .cp_block04 .inbox2 {
text-align: center;
width: 100%;
}

.cultural_property .cp_block04 .inbox2 img {
float: none;
margin-bottom: 20px;
}

.cultural_property .cp_block04 .inbox2 .txt {
float: none;
width: 100%;
}

/*------------------------------------------------*/

.cultural_property .cp_block05 {
margin: 0 auto 60px;
}

.cultural_property .cp_block05 .btn2 {
font-size: 85%;
margin-right: 5px;
}

.cultural_property .cp_block05 .btn2 a {
padding: 12px 20px 12px 30px;
}

.cultural_property .cp_block05 .btn3box {
display: block;
}

.cultural_property .cp_block05 .btn3 {
width: 80%;
margin: 0 auto 15px;
}

/*------------------------------------------------*/

.cultural_property .cp_block06 {
margin: 0 auto;
}

}