/* responsive */
@media screen and (max-width: 1580px) {
.titleWrap { max-width: 400px; }
.sec03CenterBkWrap img { top: 57%; }
.sec03BottomBkWrap img { width: 33%; }

.sec04BkWrap img:first-child { top: 3%; }
.sec04BkWrap img:last-child { top: 3%; }

.sec05BkWrap img:first-child { top: 34%; width: 12%; }
.sec05BkWrap img:last-child { top: 45%; width: 12%; right: 1%; }

}



@media screen and (max-width: 1080px) { 
br.braddition { display: block; }

body { overflow-x: hidden; }
.titleWrap { max-width: 400px; }
.titleWrap p img { width: 100%; }
.sec01_box p { font-size:1rem;  padding:10%; letter-spacing: 1px; }
.pageInBtnWrap { margin: 0 auto; /*max-width: 410px;*/ width: 100%; }
.sec01_box { /*height: 575px; width: 70%; */ margin: 5% auto; }
.sec01_box h2 { position: absolute; top: -17%; left: -16%; width: 100%; max-width: 250px; }
.sec01_box h2 img { width: 100%; }
.RightImgbox p { letter-spacing: 0; font-size: 15px; }
.sec01_box p { font-size: 15px; line-height: 32px; padding: 6% 8% 3% 8%; letter-spacing: 0px; }
.pageInBtnWrap li a img { width: 100%; background-size: contain; }
.bottomBoxImgWrap ul { margin: 0 auto; width: 100%; max-width: 960px; }
.bottomBoxImgWrap ul li { /*max-width: 280px; width: 100%;*/ }
.pageInBtnWrap ul { margin: 5% auto 5% auto; padding: 0; flex-wrap: unset; width: fit-content; display: block; }
.pageInBtnWrap li { display: block; margin: 0 3px; width: 100%; }
.pageInBtnWrap li:nth-child(1), .pageInBtnWrap li:nth-child(2), .pageInBtnWrap li:nth-child(3) { margin: 0; }
.sec03BkWrap img { width: 15.32%; }
.sec03_topBox { margin: 26% auto 0 auto; }
.sec03_h3Box { margin: -29% 0 0 0; }
.sec03_bottomBox { margin: 24% 0 0 0; }
.sec03CenterBkWrap img { top: 61%; }
.imgBox dl dt img { width: 100%; }
.openbtn { right: -10px !important; }
.preWrap ul { margin: 0 auto; max-width: 960px; }
.preWrap ul li { /*max-width: 280px;*/ }
.preWrap ul li.autumn { max-width: 605px; }
.preWrap h3 strong { font-size: 29px; }
.preWrap h3 { letter-spacing: 1px; padding: 0; }
.preWrap dl dt { }
.preWrap dl dt span { margin: -58px 0 0 -3px; }
.preWrap dl dt span:nth-of-type(2) { margin: -25px 0 0 8px; }
/*
.specialPreBox { max-width: 745px; margin: 0 auto; background: url(../img/borderImg02.svg) repeat; display: block; padding: 12px 30px 12px 30px; position: relative; background-size: 19px; }
.specialPreBox:before { content: url(../img/number5IconTABw.svg); position: absolute; width: 61.25px; height: 61.25px; left: 0; top: 0; }
.specialPreBox dl dt { padding: 2% 0 0 0; height: 78px; }
.specialPreBox dl dd { font-size: 18px; padding: 0 0 3% 0; }
.specialPreBox dl dt span { margin: 2% 3% 0 3%; background-size: 65%; font-size: 18px; line-height: 44px; }
.specialPreWrap { max-width: 960px; margin: 0 auto; }
.WPreWrap { max-width: 960px; }
.wpRightBox { padding: 10% 0 0 2%; max-width: 354px; }
.wpRightBox img { width: 100%; }
*/
.sec05BkWrap { position: relative; }
.sec05BkWrap img:first-child { top: 96%; }
.sec05BkWrap img:last-child { top: 96%; }
.i_main_mapWrap { /*max-width: 720px;*/ }
.textWrapA { border: 10px #fff dashed; /*max-width: 800px; margin: 10% auto 0 auto !important;*/ }
.sec07TxtBox dd { margin: 0; }
.sec04_h3Box h3 { font-size: 19px; letter-spacing: 2.5px; line-height: 32px; }

.btnAtype a { max-width: 350px; margin: 0 auto; display: block; }
.pageInBtnWrap li a img, .btnAtype a img, .btnCtype a img { width: 100%; }
}



@media screen and (max-width: 820px) {
small { font-size: 10px; letter-spacing: 0; }
br.braddition { display: none; }
.btnAtype a { max-width: 350px; margin: 0 auto; display: block; }
.pageInBtnWrap li a img, .btnAtype a img, .btnCtype a img { width: 100%; }
.topWrap { /*height: 100vh;*/ }
.titleWrap { z-index: 2; top: 78px; max-width: 430px; }
.titleWrap span { margin: 40% 0 0 0;  }
.TopBkWrap img { top: 8%; width: 40.65%; }
.sec01_box p { font-size: 16px; line-height: 29px; padding: 9% 3% 0 3%; letter-spacing: 0px; }
.sec01_box { /*height: 544px; width: 63%;*/ margin: 10% auto 10% auto; }
.sec01BkWrap img { top: 64%; width: 16.65%; }
.iWrap { margin: 27% 0 5% 0; }
.RightImgbox p { left: 57px; top: -198px; }
.ws { max-width: 618px; }
.textWrapA { /*max-width: 650px;*/ }
.AinBox ul li { font-size: 14px; line-height: 30px; }
.sec03_topBox { margin: 30% auto 35% auto; }
.sec03BkWrap img { top: 4%; }
.centerBox_bottom { max-width: 650px; }
.bottomBoxImgWrap ul { /*max-width: 740px;*/ }
.sec03CenterBkWrap img { top: 62%; }
.wm { max-width: 740px; }
.preWrap h3 { font-size: 17px; line-height: 48px; }
.preWrap h3 strong { font-size: 24px; }
.i_main_mapWrap { /*width: 90%;*/ }
.box_title_qa h3 { width: 92%; }

.sec07_box { padding: 0 0 5% 0; }
.sec07TxtBox ul, .sec07TxtBox ol.boxin, .sec07TxtBox dl { margin: 5% auto; max-width: 600px; }
.sec07TxtBox p { max-width: 600px; margin: 0 auto; }
.sec05AkWrap img { top: 10%; }

.preWrap ul { max-width: 740px; }
.preWrap ul li { /*max-width: 203px;*/ }
.preWrap dl dt span { width: 207px; font-size: 14px; line-height: 25px; margin: -44px 0 0 -3px; background-size: contain; letter-spacing: 0px; }
.preWrap dl dt span:nth-of-type(2) { margin: -21px 0 0 5px; }
.preWrap dl dt {  }
.preWrap dl dd span { line-height: 22px; }
.preWrap dl dd span small { left: 0; font-size: 10px; display: inherit; right: unset; }
.preWrap ul li.autumn { max-width: 451px; }

/*
.specialPreBox { max-width: 451px; padding: 4px 19px 4px 19px; background-size: 19px; }
.specialPreBox:before { content: url(../img/number5IconTAB.svg); position: absolute; width: 16px; height: 16px; left: 0; top: 0; }
.specialPreBox dl dt span { margin: 5% 24%; }
.specialPreBox dl dt { padding: 2% 0 0 0; height: 45px; }
.specialPreBox dl dd { font-size: 14px; line-height: 30px; letter-spacing: 1px; padding: 5% 0; }
.WPreWrap { max-width: 740px; }
.wpBoxWrap { display: flex; }
.wpBoxWrap h3 { left: 7%; text-align: center; padding: 0 5%; font-size: 28px; }
.wpLeftBox p { margin: 7% auto 0 auto; font-size: 16px; line-height: 33px; }
.wpRightBox { padding: 3% 0 0 1%; max-width: 270px; }
.wpRightBox img { width: 100%; }
*/
}


@media screen and (max-width: 640px) {
.bottomBoxImgWrap ul li { width: calc((100% - clamp(1.25rem,4vw,2.5rem)*1)/2); margin: 0 !important; }
.sec03BottomBkWrap img { width: 50%; }
.preWrap ul li { width: calc((100% - clamp(1rem,3vw,2rem)*1)/2); margin: 0 0 1rem 0 !important; }
.BinBox ul li { width: 50%; }
.BinBox ul li:last-child { width: 100%; }

.sec03_box .pc { display: none; }
.sec03_box .sp { display: block; }

.bottomBoxImgWrap ul li:last-child { width:calc((100% - clamp(1.25rem,4vw,2.5rem)*1)/2 + calc(50vw - 50% + 1.5rem)) ;  margin-right: calc(50% - 50% - 3rem ) !important; }
}


@media screen and (max-width: 480px) {
.sp { display: block; }
.pc { display: none; }
img { width: 100%; }
body { overflow-x: hidden; }
.spTopWrap { display: block; height: 100vh; }
.h1WrapSp { position: absolute; width: 300px; margin: 0 auto 0 auto; display: block; inset: 0; z-index: 2; top: 18%; }
.spTopWrap h1 { width: 300px; margin: auto; display: block; inset: 0; position: relative; z-index: 10; }
.spTopWrap h1 img { height: auto; position: unset; }
.spTopWrap span img { height: auto; width: 100%; position: unset; }
.spTopWrap p { max-width: 280px; margin: 3% auto 0 auto; font-size: 16px; text-align: center; font-weight: bold; letter-spacing: 2px; line-height: 28px; display: block; inset: 0; }
.spTopWrap p img { position: unset; object-fit: contain; height: 100%; width: 100%; }
.spTopWrap img { position: absolute; top: -1%; z-index: 0; object-fit: contain; height: 100vh; }
.openbtn { right: -23px !important; }
.openbtn span { right: 5%; }

#g-nav ul { left: 54%; transform: translate(-50%,-50%); width: 65%; }

.iWrap, .preWrap ul { /*display: flex; max-width: 375px;*/ }
.titleWrap h1 img { width: 60%; }
.sec01_box { width: 90%; /*height: 762px;*/ display: block; margin: 15% auto 88% auto; background-size: contain; padding: 0; }
.sec01_box h2 { position: absolute; top: -12%; left: -15%; width: 100%; max-width: 230px; }
.sec01_box p { font-size: 15px; line-height: 28px; margin: 10% auto 10% auto; letter-spacing: 0; /*max-width: 270px;*/ }
.sec01_boxArea { padding: 16px; }
.sec01BkWrap img { position: absolute; top: 74%; width: 35.65%; }

section.sec01:before, section.sec01:after, 
section.sec02:before, section.sec02:after, 
section.sec03:before, section.sec03:after, 
section.sec04:before, section.sec04:after, 
section.sec05:before, section.sec05:after, 
section.sec06:before, section.sec06:after, 
section.sec07:before, section.sec07:after { height: 30px; }

.sec02_box h2 img { width: 25%; }
.sec03_box h2 img { width: 81%; }
.sec04_box h2 img { width: 47.2%; }
.sec05_box h2 img { width: 50%; }
.sec06_box h2 img { width: 20.93%; }
.sec07_box h2 img { width: 33.24%; }

h2 span:last-child { font-size: 12px; letter-spacing: 2px; margin: 0; }
.RightImgbox { position: relative; max-width: 300px; margin: 0 auto; }
.RightImgbox img { position: relative; z-index: 10; margin: 203px 0 0 0; }
.RightImgbox p {  font-size: 14px;  left: 10px; top: unset; margin: 0; }
.btnAtype { max-width: 300px; margin: 10% auto; }
.btnAtype p { font-size: 12px; letter-spacing: 0px; }
.AinBox h3 { font-size: 20px; letter-spacing: 2px; }
.AinBox ul li { font-size: 13px; line-height: 29px; }

.BinBox { padding: 5% 5% 50% 5%; }
.textbord { width: 268px; margin:0 auto; position: absolute; left: calc(50% - 134px); background-size: contain;  }
.textbord p { font-size: 13px !important; line-height: 21px !important; max-width: 217px; margin: 9% auto; }
.textWrapA { border: 5px dashed; border-color: #fff; /*margin: 5px !important;*/ }
.sec02_box dl dt, .sec02_box dl dd { font-size: 12px; line-height: 20px; }

.sec03_topBox, .sec07_topBox { padding: 10px; background-size: 10px; }
.sec03_topBox { margin: 70% auto 0 auto; }
.sec03BkWrap img { top: 5%; width: 23%; }
.centerBox_top h3, .centerBox_bottom h3 { font-size: 18px; }
.inWrap { margin: 0; padding: 30px 5% 26px 5%; }
.sec03_h3Box { margin: -59% 0 0 0; }
.sec03_h3Box h3 { font-size: 15px; letter-spacing: 1px; color: #000000; line-height: 28px; max-width: 316px; margin: 5% auto 2% auto; display: flex; width: 100%; }
.sec03_h3Box h3:before, .sec03_h3Box h3:after { content: ""; width: 39px; background-size: contain; }
.centerBox_bottom span { font-size: 12px; line-height: 25px; display: block; }
.sec03_topBox p { font-size: 15px; line-height: 31px; letter-spacing: 0px; }
.sec03_bottomBox { margin: 50% 0 0 0; }
.sec03_bottomBox h3 { font-size: 16px; line-height: 43px; }
.sec03_bottomBox h3 span { background: url("../img/sec03_bottom.gif") top center no-repeat; width: 350px; height: 45px; display: block; background-size: contain; margin: 0 auto; }
.sec03_bottomBox h3 span:first-child, .sec03_bottomBox h3 span:last-child { margin: 0 auto; }
.sec03CenterBkWrap img { top: 60%; }
.bottomBoxImgWrap ul li { /*max-width: 165px; width: 100%;*/ }
.bottomBoxImgWrap ul li:nth-of-type(1), .bottomBoxImgWrap ul li:nth-of-type(3) { margin: 0 auto; }
.bottomBoxImgWrap ul li:nth-of-type(5) { margin: 0 auto; }
.bottomBoxImgWrap ul li:nth-of-type(2), .bottomBoxImgWrap ul li:nth-of-type(4) { margin: 0 auto; }
.sec03BottomBkWrap img { /*right: -21px; bottom: 7%; width: 54%;*/ }
.imgBox dd { font-size: 14px; line-height: 20px; letter-spacing: 1px; color: #000000; font-weight: bold; margin: 2% 0; text-align: justify; }
.wm { max-width: calc(100% - 2rem); padding:0;  }

.sec04_box { margin: 15% 0 20% 0; }
.sec04BkWrap img:first-child { top: 5%; width: 25%; }
.sec04BkWrap img:last-child { top: 5%; width: 35%; }
.sec04_h3Box { margin: 35% 0 0 0; }
.sec04_h3Box h3 { font-size: 15px; letter-spacing: 1px; line-height: 29px; max-width: 340px; }
.sec04_h3Box h3:before, .sec04_h3Box h3:after { content: ""; width: 42px; background-size: contain; }
.preWrap h3 { font-size: 23px; padding: 0; line-height: 62px; }
.preWrap h3 strong { font-size: 36px; }
.preWrap { padding: 0 0 5% 0; }
.preWrap ul li { /*max-width: 165px; width: 100%; background-size: contain; list-style: none;*/ }
.preWrap ul li:nth-of-type(1), .preWrap ul li:nth-of-type(2), .preWrap ul li:nth-of-type(3), .preWrap ul li:nth-of-type(4), .preWrap ul li:nth-of-type(5), .preWrap ul li:nth-of-type(6), .preWrap ul li:nth-of-type(7), .preWrap ul li:nth-of-type(8), .preWrap ul li:nth-of-type(9), .preWrap ul li:nth-of-type(10) { margin: 5% auto; }
.preWrap ul li:nth-of-type(11) { margin: 0 3%; }
.preWrap dl dt span { background: url("../img/preTitlebk_natsu.gif") top center no-repeat; max-width: 165px; height: 33px; padding: 0; font-size: 11px; line-height: 20px; font-weight: 600; text-align: center; letter-spacing: 0; display: block; margin: -42px auto 0 auto; width: 100%; background-size: contain; }
.preWrap dl dt span small { font-size: 10px; letter-spacing: 0; transform: scale(0.7); display: inline-block; }
.preWrap dl dt span:nth-of-type(2) { margin: -24px 0 0 10px; }
.preWrap dl dt { display: block; height: auto; }
.preWrap dl dd { margin: 7% 0; font-size: 12px; line-height: 21px; }
.preWrap dl dt span strong { font-size: 6px; }
.preWrap dl dd span small { font-size: 10px; letter-spacing: 0; }
.i_main_mapWrap { /*width: 90%; height: 550px; max-width: 300px;*/ margin: 0;  }
.preWrap h3:before, .preWrap h3:after { content: ""; width: 52px; }
/*
.specialPreBox { padding: 10px 10px; background-size: 10px; margin: 0 5%; }
.specialPreBox:before { content: url(../img/number5IconSP.svg); position: absolute; width: 10%; height: 10%; left: 0; top: 0; background-size: 30px; }
.specialPreBox dl { background-color: #ffffff; margin: 0; }
.specialPreBox dl dt { padding: 2% 0 0 0; height: 30px; }
.specialPreBox dl dt span { background: url("../img/preTitlebkBig_natsu.gif") top center no-repeat; width: 100%; height: auto; padding: 0; font-size: 16px; color: #e34b4a; line-height: 35px; font-weight: 600; text-align: center; letter-spacing: 1px; display: block; margin: 0 10%; max-width: 250px; background-size: contain; }
.specialPreBox dl dd { font-size: 14px; color: #000000; letter-spacing: 1px; line-height: 23px; text-align: center; font-weight: bold; padding: 5% 8%; margin: 0; }
.WPreWrap { max-width: 1140px; margin: 15px; border: 6px dashed; }
.wpArea { padding: 30px 15px; }
.wpBoxWrap { display: block; padding: 2% 5%; }
.wpBoxWrap h3 { font-size: 21px; font-weight: bold; color: #81c5ee; letter-spacing: 3px; top: -16px; padding: 0 5%; left: 13px; line-height: 32px; max-width: 243px; text-align: center; }
.wpBoxWrap h3:before, .wpBoxWrap h3:after { content: none; }
.wpLeftBox p { font-size: 14px; line-height: 31px; margin: 11% auto 0 auto; letter-spacing: 1px; }
.wpLeftBox p span { letter-spacing: 1px; }
.wpRightBox { padding: 0 0 0 0; max-width: unset; }
.wpRightBox img { width: 100%; }
*/
.accordion { margin:1rem auto; }

.sec05AkWrap img { top: 0; width: 22.95%; margin: 10% 0 0 0; }
.sec05BkWrap img:first-child { top: 56%; width: 22.95%; position: relative; }
.sec05BkWrap img:last-child { top: 56%; width: 22.95%; position: relative; margin: 0 0 0 181px; }
.box_title { padding: 4%; display: block; color: #fff; font-weight: bold; font-size: 12px; }
.box_title_qa h3 { font-size: 12px; letter-spacing: 2px; font-weight: 600; display: inline-flex; margin: 1% 0 1% 0; color: #333333; width: 81%; text-align: left; padding: 0 0 0 0; }
.box_title_qa h3 strong { color: #dadf00; font-size: 24px; font-weight: bold; padding: 0 4% 0 0; }
.box_title_qa::after, .box_title_qa::before { content: ""; top: 1.1em; }

.sec06_box { /*margin: 15% auto 20% auto;*/ }

.sec07_box { /*margin: 15% auto 20% auto;*/ }
.sec07AkWrap img { top: 2%; }
.sec07TxtBox h3 { font-size: 18px; display: block; margin: 5% auto 5% auto; padding: 0 0 3% 0; }
.sec07TxtBox ul { margin: 5% auto; }
.sec07TxtBox p { font-size: 12px; line-height: 28px; font-weight: bold; letter-spacing: 1px; text-align: justify; max-width: 350px; margin: 0 auto; }
.sec07TxtBox ul li, .sec07TxtBox ol.boxin li, .sec07TxtBox dd { font-size: 12px; line-height: 28px; margin: 0; text-align: justify; }
.sec07TxtBox dl { /*max-width: 300px;*/ margin: 0 auto 5% auto; }
.sec07TxtBox ol.boxin { padding: 0 5%; }

footer img { width: 50%; }
}