@charset "utf-8";
:root {
	--main: #0873C3;
	--main2: #115E97;
	--bg: #f5f5f5;
	--color: #333333;
	--color2: #555;
	--point: #767676;
	--gary: #f7f7f7;
	--red: #f00;
	--blue: #4d8cf5;
	--blue2: #EEF8FF;
	--green: #30a114;
	--brown: #a19514;
	--orange: #ffd900;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td ,video,button, textarea, input, select {margin: 0;padding: 0; border: 0;outline: 0;vertical-align: baseline;color: var(--color2); font-family: "M PLUS 1p", arial, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", "ＭＳ ゴシック", sans-serif; -webkit-font-smoothing: antialiased;-webkit-text-size-adjust: 100%;}
body {font-size: 16px; line-height: 1.5;}
ol, ul { list-style: none;}
:focus {outline: 0;}
ins {text-decoration: none;}
del {text-decoration: line-through;}
table {border-collapse: collapse;border-spacing: 0;}
img {vertical-align:top;max-width: 100%;}
iframe{max-width: 100%;}
::placeholder{color: #B8B8B8;}
::-webkit-placeholder{color: #B8B8B8;}
::-moz-placeholder{color: #B8B8B8;}
::-ms-placeholder{color: #B8B8B8;}
::-o-placeholder{color: #B8B8B8;}
a{text-decoration: none;transition: opacity 0.3s;transition: all .3s;}
a:hover{opacity: .7;}
/* common-set */
.sp{display: none;}
.pc{display: block;}
.full_img img{width: 100%;}
.tx-l{text-align: left;}
.tx-c{text-align: center;}
.tx-r{text-align: right;}
.d-flex{display: flex;}
.jc-b{justify-content: space-between;}
.jc-c{justify-content: center;}
.jc-e{justify-content: flex-end;}
.ai-c{align-items: center;}
.ai-e{align-items: flex-end;}
.nav-unshown{display: none;}
.p_relative{position: relative;}
.f14{font-size: 14px;}
.f12{font-size: 12px;}
.inner{padding: 0 50px;max-width: 1440px;margin: 0 auto;}
.inner1{padding: 0 50px;max-width: 1300px;margin: 0 auto;}
.inner-s{padding: 0 50px;max-width: 1000px;margin: 0 auto;}
.inner-s2{padding: 0 50px;max-width: 860px;margin: 0 auto;}
.sec{padding: 120px 0;}
.bg01{background-color: var(--main);}
.bg02{background-color: var(--main2);}
.bg_gary{background-color: var(--gary);}
.bg_blue2{background-color: var(--blue2);}
.sp_nav,.nav-unshown {display: none;}
@keyframes shake {
	0% {transform: rotate(0);transform-origin: center;}
	25% {transform: rotate(-10deg); transform-origin: center;}
	50% {transform: rotate(10deg);transform-origin: center;}
	75% { transform: rotate(-10deg); transform-origin: center;}
	100% {transform: rotate(0); transform-origin: center;}
}
.logo .logo_bell {
  animation: shake 0.8s infinite;
  animation-delay: 1s;
}
/* header */
header{position: fixed;left: 0;top: 0;z-index: 20;width: 100%;transition: all .2s;border: 1px solid #000;background-color: #fff;}
.logo a{display: flex;align-items: center; gap: 10px; text-align: center;padding: 10px 0 10px 24px;}
.logo img{height: 70px;}
.logo .logo_bell {}
.nav-content{gap: 40px;}
.menu-trigger{display: none;background-color: var(--main);}
.menu-trigger span { display: inline-block; transition: all .4s; box-sizing: border-box;}
.menu-trigger span { position: absolute; left: 15px; width: 18px; height: 2px; background-color: #fff; border-radius: 2px;}
.menu-trigger span:nth-of-type(1) { top: 13px;}
.menu-trigger span:nth-of-type(2) { top: 21px;}
.menu-trigger span:nth-of-type(3) { bottom: 13px;}
#nav-input:checked ~ .menu-trigger span{top: 50%;margin-top: -2px;}
#nav-input:checked ~ .menu-trigger span:nth-of-type(1) { -webkit-transform: rotate(45deg); transform: rotate(45deg);}
#nav-input:checked ~ .menu-trigger span:nth-of-type(2) { display: none;}
#nav-input:checked ~ .menu-trigger span:nth-of-type(3) { -webkit-transform: rotate(-45deg); transform: rotate(-45deg);}
.header-menu{display: flex;align-items: center;justify-content: center;}
.header-menu ul{align-items: center;}
.header-menu a{display: block;padding: 0 16px;}
.spic_contact {margin-left: 24px;}
.spic_contact a{color: #fff;padding: 18px 20px;}
.spic_contact span{display: block;color: #fff;font-size: 12px;line-height: 1.5; font-weight: 600;}
.spic_contact .tel_phone{font-size: 28px;line-height: 36px;display: flex;align-items: center;}
.spic_contact .tel_phone img {width: 18px;margin-right: 4px;}
.spic_mail a{height: 90px;width: 80px;display: flex;align-items: center;justify-content: center;padding: 0;}
.spic_mail img{width: 34px;}
/* main */
.main{padding-top: 92px;min-height: calc(100vh - 238px);}
/* footer */
footer{border-top: 1px solid #C4C4C4;padding-top: 32px;}
.ft_logo p{font-size: 10px;}
.ft_logo_img{margin-bottom: 16px;}
.ft_logo img{width: 158px;}
.ft_link{width: 930px;max-width: 100%;position: relative;}
.ft_link::before{content: ''; width: 1px;height: 100%;background-color: #C4C4C4; position: absolute;left: 48%;top: 0;}
.ft_menu{width: calc(48% - 30px);}
.ft_contact {width: calc(52% - 30px);}
.ft_menu {display: flex;flex-wrap: wrap;gap: 10px;}
.ft_menu a{font-size: 16px;padding-right: 14px;}
.ft_contact .contact_tel{font-size: 28px;}
.ft_contact .contact_more{width: 200px;margin-top: 0;}
.ft_contact .contact_more a {width: 100%;}
.ft_contact .contact_more a img{width: 24px;}

.copyright {margin-top: 20px;background-color: var(--main);padding: 6px 20px;}
.copyright p{font-size: 10px;text-align: center;color: #fff;}

.ttl{text-align: center;margin-bottom: 90px;}
.ttl h2 {font-size: 48px;line-height: 1.5;font-weight: 600;}
.ttl h4 {font-size: 16px;line-height: 1.5;font-weight: 600;color: var(--main);}
.ttl_dot{color: var(--main);position: relative;}
.ttl_dot::before{content: '';width: 8px;height: 8px;background-color: var(--main);border-radius: 8px;position: absolute;left: calc(50% - 4px);top: -6px;}
.ttl3 h2{font-size: 32px;line-height: 1.5;font-weight: 600;}
.more{text-align: center;margin-top: 12px;}
.contact_more{margin-top: 20px;}
.more a {width: 120px;display: inline-block;background-color: var(--main); color: #fff;border-radius: 20px;font-size: 12px;line-height: 1.5;padding: 5px;box-sizing: border-box;}
.contact_more a{width: calc(100% - 20px);border-radius: 30px;font-size: 18px;font-weight: 600;display: inline-flex;align-items: center;justify-content: center;gap: 10px;padding: 13px;}
.contact_more a img{width: 30px;}
/* top */
.kv{position: relative;}
.kv>img{width: 100%;}
.kv_txt{position: absolute;bottom: 3%;left: 4.6%;z-index: 3;width: 33.125%;text-align: center;}
.kv_txt img{width: 100%;}
.kodawari_bg{background-image: url(../img/top/kodawari_bg.png),url(../img/top/kodawari_bg.jpg);background-repeat: no-repeat;background-position: right 50px, center bottom;background-size: 52%,100%;padding-bottom: 29vw;}
.kodawari_list{display: flex;gap: 20px;}
.kodawari_item{background-color: #fff;border-radius: 160px 160px 40px 40px;padding: 115px 20px 50px;position: relative; width: calc((100% - 40px)/3);text-align: center;box-shadow: 0 2px 40px rgba(0,0,0,.06);box-sizing: border-box;}
.kodawari_icon{position: absolute;left: calc(50% - 70px);top: -30px;width: 140px;}
.kodawari_txt{font-size: 24px;line-height: 42px;}
.kodawari_txt span{color: var(--main);font-size: 32px;}
.kodawari_img{margin-top: 20px;}
.kodawari_img img{width: 200px;}
.kodawari_text{margin-top: 20px;}

.plan_list{display: flex;flex-wrap: wrap;gap: 40px 16px;}
.plan_item{background-color: #fff;border-radius: 10px;padding: 16px;position: relative; width: calc((100% - 48px)/4);text-align: center;box-shadow: 0 2px 20px rgba(0,0,0,.1);box-sizing: border-box;}
.plan_img {border-radius: 5px;overflow: hidden;}
.plan_img img{width: 100%;}
.plan_text{margin-top: 12px;}
.plan_text h3{font-size: 24px;line-height: 1.5;}

.news{padding-top: 200px;position: relative;}
.news_bg{width:60%;height: calc(100% - 300px); background-color: var(--main);border-radius: 40px 0 0 40px;position: absolute;right: 0;top: 120px;}
.news_box{background-color: #fff;width: 860px;max-width: 100%; position: relative;padding: 60px;box-sizing: border-box;border-radius: 40px;box-shadow: 0 2px 20px rgba(0,0,0,.1);}
.news_ttl{text-align: left;}
.news_item {border-top: 1px solid #C4C4C4;}
.news_item:last-child {border-bottom: 1px solid #C4C4C4;}
.news_item a{display: flex;padding: 16px 0;}
.news_item .date{padding-right: 15px;display: flex;gap: 15px;align-items: center;font-weight: 600;}
.news_item .date::after{content: '';width: 2px;height: 12px;background-color: #C4C4C4;}
.news_more{position: absolute;right: 60px;top: 94px;margin-top: 0;}

.movie{background: url(../img/top/movie_bg.jpg) no-repeat center;background-size: cover;}
.movie_ifream{width: 800px;max-width: 100%;margin: 0 auto;}
.ttl2 {margin-bottom: 40px;}
.desc p{font-size: 18px;line-height: 1.6;}
.about_box{display: flex;align-items: flex-start; margin-top: 60px;gap: 60px; margin-right: -220px;}
.about_table{width: 520px;border-bottom: 1px solid #C4C4C4;}
.about_table dl{display: flex;align-items: center; padding: 10px 0;gap: 16px;border-top: 1px solid #C4C4C4;}
.about_table dt{background-color: var(--main);color: #fff; width: 120px;padding: 5px 0; text-align: center;border-radius: 8px;font-weight: 600;}
.about_table dt,.about_table dd{line-height: 30px;}
.about_map{flex: 1;}
.about_map iframe{width: 100%;height: 387px;}

.faq_box{margin-top: 60px;}
.faq_item+.faq_item{margin-top: 8px;}
.faq_item dt{background-color: var(--main);padding: 20px 68px;border-radius: 6px 6px 0 0;display: flex;position: relative;cursor: pointer;}
.faq_item dt::after{content: '';border-top: 2px solid #fff;border-right: 2px solid #fff;transform: rotate(135deg);position: absolute;right: 29px;top: 32px; width: 12px;height: 12px;transition: all .3s;transform: rotate(315deg);}
.faq_words{position: absolute;left: 16px;top: 20px;width: 40px;height: 40px;border-radius: 40px;background-color: #fff;color: var(--main);display: flex;align-items: center;justify-content: center;font-size: 24px;font-weight: 600;}
.faq_item dt h3{color: #fff;font-size: 24px;line-height: 36px;margin-top: 2px;}
.faq_item dd{background-color: #fff;border-radius: 0 0 6px 6px;padding: 28px 16px 24px 68px;position: relative; display: none;}
dd .faq_words {background-color: #EDEDED;color: var(--color2);}
.faq_item.active dt{border-radius: 6px;}
.faq_item.active dt::after{transform: rotate(135deg);top: 28px;}

.contact_bg {background: url(../img/top/contact_bg_.png) no-repeat center;background-size: cover;padding: 88px 0;display: flex;justify-content: center;}
.contact_box{background: #fff;padding: 32px;border-radius: 16px;}
.contact_desc{margin-top: 16px;}
.contact_tel{color: var(--main);font-size: 36px;font-weight: 600;display: flex;align-items: center;justify-content: center;}
.contact_tel img {width: 32px;margin-right: 4px;}
/**news***/
.news_details_ttl{border-bottom: 1px solid #CCCCCC;padding-bottom: 20px;}
.news_details_ttl h2{ font-size: 30px; line-height: 1.5;}
.news_details_ttl span{display: inline-block; padding: 3px 10px; background: #00A040; color: #fff; font-size: 12px; line-height: 1.5;}
article{word-break: break-all; margin-top: 70px;}
.news-detail-article+.more{margin-top: 80px;}
.news-detail-article+.more a{ width: 200px; padding: 12px; font-size: 16px; border-radius: 25px;}


/* contact_form */
#enqArea{padding: 160px 20px 100px;width: 800px;max-width: calc(100% - 40px);margin: 0 auto; }
.g-recaptcha>div{margin: 20px auto 40px;}
.headerMessage{font-size: 20px;text-align: center;margin-bottom: 50px;}
.enqTitle{font-size: 30px;line-height: 1.3;margin-bottom: 20px;font-weight: 600;}
.contact_desc h4{font-size: 24px;font-weight: 700;line-height: 1.4;}
.enqForm table{width: 100%;}
.enqForm th,.enqForm td,.enqForm tr{width: 100%;text-align: left;display: block;width: 100%;box-sizing: border-box;}
.enqForm input, .enqForm select{border: 1px solid #CCCCCC;background-color: #fff;font-size: 15px;font-weight: 400;line-height: 1.4;height: 50px;padding: 10px;width: 100%;border-radius: 6px; box-sizing: border-box;}
.enqForm textarea{border: 1px solid #CCCCCC;background-color: #fff;font-size: 16px;font-weight: 400;line-height: 1.4;height: 405px;padding: 10px;width: 100%;border-radius: 6px; box-sizing: border-box;}
.enqForm tr{margin-top: 20px;}
.enqForm th,.enqForm td{font-size: 16px;line-height: 1.6;}
.enqForm th{margin-bottom: 10px;font-weight: 700;}
.enqRequire{color: #f23a3c;margin-left: 5px;}
.enqForm input#next{background-color: var(--main);color: #fff;border: none; font-weight: 700;height: 56px;font-size: 16px; width: 300px; border-radius: 30px;}
.enqForm input#back,.enqForm input#regist{background-color: #cdcdcd;border: none; font-weight: 700;height: 56px;font-size: 16px; width: 300px; border-radius: 30px;}
.enqForm input#regist{background-color: var(--main);color: #fff;}
.enqForm input[type="radio"],.enqForm input[type="checkbox"]{width: 20px;height: 20px; position: relative; top: 4px;}
.sp_nav,.nav-unshown {display: none;}
.errors{color: #f23a3c;margin-bottom: 10px;font-weight: 600;}
.enqFormFoot th{display: flex;gap: 20px;justify-content: center;}
.enqDescription{margin-top: 5px;}
.privacy-item+.privacy-item{margin-top: 40px;}
.privacy-ttl{margin-bottom: 10px;}
.privacy-ttl h2{font-size: 22px;}

/***250724***/
.descbox{margin-top: 30px;}
.descbox_item+.descbox_item{margin-top: 20px;}
.descbox_ttl{color: var(--main);margin-bottom: 12px; font-size: 16px;}
.descbox_ttl span{background-color: var(--main); color:#fff;margin-right: 8px;display: inline-block; padding: 3px 10px;width: 4em;text-align: center;}

.ft_share_sp{display: none;}
.ft_share{gap: 10px;margin-top: 10px;}
.ft_share img{width: 30px;}

/***251016***/
.sub-plan .plan_item{width: calc((100% - 32px) / 3);}
.plan_txt{text-align: left;margin-top: 4px;}
.plan_ttl{margin-bottom: 12px;text-align: left;}
.plan_ttl h3{font-size: 24px;line-height: 1.5;}


@media (max-width: 1460px) {
	header .inner{padding: 0;}
	.about_box{margin-right: calc(520px - 50vw);}
}

@media (max-width: 1260px) {
	.ft_flex {flex-direction: column;gap: 30px; align-items: center;}
}
@media (max-width: 1100px) {
	body{position: relative;}
	.inner,.inner-s,.inner-s2 {padding: 0 20px;}
	header{border: none;box-shadow: 0 4px 8px rgba(0,0,0,.15);}
	header .inner{padding: 0 12px;}
	.menu-trigger {display: block; position: absolute; width: 48px; height: 44px; right: 0; top: 8px; z-index: 6;}
	.logo a {padding: 8px 0;}
	.logo img{height: 44px;}
	#nav-input:checked ~ .nav-content{display: block;}
	.nav-content{display: none;position: absolute;width: 100vw;min-height: calc(100vh - 60px); top: 60px;background-color: #fff;left: 0;border-top: 1px solid #c4c4c4;}
	.header-menu,.header-menu ul{display: block;position: relative;}
	.header-menu li{border-bottom: 1px solid #c4c4c4;}
	.header-menu a{padding: 15px 20px;}
	.header-menu li.spic_contact{margin-left: 0;display: inline-block;width: calc(100% - 80px);}
	.header-menu li.spic_mail{display: inline-block;position: absolute;right: 0;bottom: 0;height: 74px;}
	.header-menu li.spic_contact a{padding: 10px 20px;}
	.header-menu li.spic_mail a{padding: 0;}
	.main{padding-top: 60px;min-height: calc(100vh - 210px);}
	
	.plan_item,.sub-plan .plan_item{width: calc((100% - 16px)/2);}
	.about_box{flex-wrap: wrap;margin-right: 0;}
	.about_table{width: 100%;}
	.about_map{flex: auto;width: 100%;}
	
	.ft_flex,.ft_link,.ft_contact{flex-wrap: wrap;}
	.ft_flex{gap: 32px;}
	.ft_link::before{display: none;}
	.ft_menu,.ft_contact{width: 100%;}
}
@media (max-width: 768px) {
	body{font-size: 14px;}
	.inner,.inner1,.inner-s,.inner-s2 {padding: 0 20px;}
	.main{min-height: 300px;}
	.sp{display: block;}
	.pc{display: none;}
	.ttl{margin-bottom: 70px;}
	.ttl h2{font-size: 32px;line-height: 48px;}
	.ttl_dot{padding-top: 0;display: inline-block;}
	.ttl_dot::before{width: 6px;height: 6px;top: 0;}
	.ttl2{margin-bottom: 40px;}
	footer{margin-top: 0;}
	.kv>img{aspect-ratio: 375/390;object-fit: cover;}
	.kv_txt{width: 46%;left: auto;right: 0;bottom: 12%;top: auto;transform: none;}
	.sec{padding: 60px 0;}
	.kodawari_bg{padding-bottom: 85vw;background-size: 100%, 210%;background-position: 30vw 160px,center bottom;}
	.kodawari_list{flex-wrap: wrap;gap: 60px;}
	.kodawari_item{width: 100%;}
	.plan_list{gap: 20px 16px;}
	.plan_text h3,.plan_ttl h3{font-size: 18px;}
	.more{margin-top: 8px;}
	.more a{font-size: 10px;line-height: 1;width: 80px;}
	.news{padding: 120px 0 80px;}
	.news_bg{top: 80px;}
	.news_box{padding: 40px 24px;border-radius: 20px;}
	.news_more{margin-top: 0;right: 24px;top: 64px;}
	.news_item a{flex-wrap: wrap;}
	.news_item .date{padding: 0;}
	.news_item .date::after{display: none;}
	.movie_ifream{padding: 0 25px;box-sizing: border-box;}
	.desc p{font-size: 17px;}
	.about_box{margin-top: 40px;gap: 40px;}
	.about_table dt{width: 90px;}
	.about_table dt, .about_table dd{line-height: 1.5;}
	.about_map iframe{height: 210px;}
	.faq_item dt{padding: 14px 48px 14px 68px;}
	.faq_item dt h3{font-size: 20px;}
	.faq_item dt::after{right: 22px;}
	.contact{padding: 0 0 80px;}
	.contact .inner-s{padding: 0;}
	.contact_bg{padding: 80px 50px;}
	.contact_box{width: 100%;padding: 20px;border-radius: 20px;}
	.ttl3 {text-align: center;}
	.ttl3 h2{font-size: 20px;}
	.contact_desc{margin-top: 8px;}
	.contact_tel{font-size: 28px;}
	.contact_more a{width: 100%;font-size: 18px;}
	.ft_menu{flex-direction: column;}
	.ft_contact{display: block; border-top: 1px solid #c4c4c4;padding-top: 30px;margin-top: 30px;text-align: center;}
	.ft_contact .contact_tel{font-size: 36px;}
	.ft_contact .contact_more{margin: 20px auto 0;text-align: center;width: 240px;}
/**news***/
	article{margin-top: 40px;}
	.news_details_ttl h2{ font-size: 22px;}
	.news-detail-article+.more{margin-top: 40px;}
	#enqArea{padding: 100px 20px 60px;}
	.enqTitle{font-size: 30px;}
	.headerMessage{font-size: 14px;}
	.privacy-item+.privacy-item{margin-top: 30px;}
	.privacy-ttl h2{font-size: 18px;}

.ft_share_sp{display: flex;}
.ft_share_sp a{padding: 0;}
.ft_contact_flex{display: block;}
.ft_share{justify-content: center; margin-top: 20px;}
}