body { margin: 0; padding: 0; }

html, body { height: 100%; }

img { line-height: 0; font-size: 0; border: 0; }

a img, fieldset, img { border: 0; }

blockquote, dd, div, dl, dt, fieldset, form, h1, h2, h3, h4, h5, h6, ul, li, ol, p, pre, span, td, th { margin: 0; padding: 0; }

h1, h2, h3, h4, h5, h6, p, address { font-size: 100%; }

ul, li, ol { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; font-size: 100%; }

a:link, a:visited { color: #000; text-decoration: none; }

a:hover, a:active { color: #333; text-decoration: none; }

a { -webkit-transition: all 0.2s ease-in; -moz-transition: all 0.2s ease-in; -ms-transition: all 0.2s ease-in; -o-transition: all 0.2s ease-in; transition: all 0.2s ease-in; }

a:hover { filter: alpha(opacity=80); -moz-opacity: 0.80; opacity: 0.80; }

hr { display: none; }

.cf:before, .cf:after { content: " "; display: table; }

.cf:after { clear: both; }

.cf { *zoom: 1; }

*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

html body { background: #f3eee3; color: #333; font-size: 16px; font-family: 'Noto Sans JP', sans-serif; font-weight: 400; }

img { vertical-align: top; }

#container { margin: 0 auto; text-align: center; line-height: 180%; min-width: 1000px; overflow-x: hidden; }

@media screen and (min-width: 760px) { .sp { display: none !important; }
  .pc { display: block; } }
@media screen and (max-width: 759px) { .pc { display: none !important; }
  .sp { display: block; } }
.cInner { width: 960px; margin: 0 auto; text-align: center; position: relative; z-index: 1; }

.link { margin-top: 45px; }
.link.gototop img { width: 110px; height: auto; }

.center { text-align: center; }

@media screen and (max-width: 759px) { /*SP*/
  html body { font-size: 3.3vw; }
  #container { min-width: 100%; }
  .cInner { width: 100%; padding: 0 5vw; }
  img.fit { width: 100%; height: auto; }
  .link { margin-top: 10vw; padding: 0 35vw; }
  .link.gototop img { width: 100%; height: auto; } }
/*-------------------------------------------------
	++ HEADER
-------------------------------------------------*/
#header { min-height: 85px; background-color: #f3eee3; padding: 10px 50px; text-align: left; }
#header #headerLogo { width: 100px; }
#header #headerLogo img { width: 100%; height: auto; }

@media screen and (max-width: 759px) { /*SP*/
  #header { min-height: auto; padding: 3vw; }
  #header #headerLogo { width: 20%; } }
/*-------------------------------------------------
	++ MENU
-------------------------------------------------*/
#menuBtn { position: absolute; top: 20px; right: 35px; width: 50px; height: 45px; z-index: 9998; }
#menuBtn span { display: inline-block; position: absolute; left: 5%; width: 90%; height: 4px; border-radius: 2px; background-color: #51708c; }
#menuBtn span:nth-of-type(1) { top: 0; }
#menuBtn span:nth-of-type(2) { top: 21px; }
#menuBtn span:nth-of-type(3) { bottom: 0; }
#menuBtn.current span:nth-of-type(1) { transform: rotate(45deg); top: 20px; }
#menuBtn.current span:nth-of-type(2) { display: none; }
#menuBtn.current span:nth-of-type(3) { transform: rotate(-45deg); top: 20px; }

#menu { position: fixed; top: 0; left: 0; width: 100%; margin: 0; z-index: 9998; }
#menu .menuBox { width: 100%; height: 100vh; background-color: rgba(252, 205, 68, 0.9); display: none; padding: 0 0 0 0; text-align: center; }
#menu .menuBox .inner { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center; align-items: center; height: 100%; padding: 30px; overflow-y: scroll; }
#menu .menuBox ul li { display: block; font-size: 28px; font-weight: 700; letter-spacing: 2px; }
#menu .menuBox ul li a { display: block; padding: 20px; }
#menu .menuBox ul li.menuMessage { margin-top: 80px; }
#menu .menuBox ul li.menuJme { margin-top: 20px; }
#menu .menuBox ul li.menuJme a { border: 2px solid #333; display: inline-block; border-radius: 40px; padding: 15px 20px; }

@media screen and (max-width: 759px) { /*SP*/
  #menuBtn { top: 5vw; right: 3vw; width: 8vw; height: 8vw; }
  #menuBtn span { height: 3px; }
  #menuBtn span:nth-of-type(1) { top: 1vw; }
  #menuBtn span:nth-of-type(2) { top: 3.6vw; }
  #menuBtn span:nth-of-type(3) { bottom: 1vw; }
  #menuBtn.current span:nth-of-type(1) { top: 3vw; }
  #menuBtn.current span:nth-of-type(3) { top: 3vw; }
  #menu .menuBox ul li { font-size: 3.8vw; }
  #menu .menuBox ul li a { padding: 2.4vw; }
  #menu .menuBox ul li.menuMessage { margin-top: 5vw; } }
/*-------------------------------------------------
	++ MAIN 
-------------------------------------------------*/
#main { background: #fccd44; padding: 4% 4%; position: relative; overflow-y: hidden; }
#main #mainSlider { position: relative; width: 100%; height: 59vw; overflow: hidden; }
#main #mainSlider:before, #main #mainSlider:after { content: ""; background: url("../img/main_corner.png") center top no-repeat; background-size: 80px 80px; width: 80px; height: 80px; position: absolute; top: 0; z-index: 1; }
#main #mainSlider:before { left: 0; }
#main #mainSlider:after { right: 0; transform: scale(-1, 1); }
#main #mainSlider .mainImg { position: relative; }
#main #mainSlider .mainImg:before, #main #mainSlider .mainImg:after { content: ""; background: url("../img/main_corner.png") center top no-repeat; background-size: 80px 80px; width: 80px; height: 80px; position: absolute; bottom: 0; z-index: 1; }
#main #mainSlider .mainImg:before { left: 0; transform: scale(1, -1); }
#main #mainSlider .mainImg:after { right: 0; transform: scale(-1, -1); }
#main #mainSlider .mainImg .slick-list { position: relative; overflow: hidden !important; }
#main #mainSlider .mainImg .slideItem { background-repeat: no-repeat; background-position: center center; background-size: 100% auto; height: 59.1vw; }
#main #mainSlider .mainImg .slideItem.slide1 { background-image: url("../img/main_01.jpg"); }
#main #mainSlider .mainImg .slideItem.slide2 { background-image: url("../img/main_02.jpg"); }
#main #mainSlider .mainImg .slideItem.slide3 { background-image: url("../img/main_03.jpg"); }
#main #mainSlider .mainImg .slideItem.slide4 { background-image: url("../img/main_04.jpg"); }
#main .mainLogo { position: absolute; top: 17%; left: 0; width: 100%; text-align: center; opacity: 0; animation: logoMoved 1s ease-out 0s forwards; }

@keyframes logoMoved { 0% { opacity: 0; transform: translateY(100%); }
  100% { opacity: 1; transform: translateY(0); } }
.slide-animation { animation: fadezoom 10s 0s forwards; }

@keyframes fadezoom { 0% { transform: scale(1) rotate(0.001deg); }
  100% { transform: scale(1.1) rotate(0.001deg); } }
#container.sub #main { background: #f3eee3 url("../img/bg_sub01.jpg") center top no-repeat; background-size: 100% auto; min-height: 570px; background-size: cover; background-attachment: fixed; }

@media screen and (max-width: 759px) { /*SP*/
  #main #mainSlider:before, #main #mainSlider:after { width: 10vw; height: 10vw; background-size: 10vw 10vw; }
  #main #mainSlider .mainImg:before, #main #mainSlider .mainImg:after { width: 10vw; height: 10vw; background-size: 10vw 10vw; }
  #main .mainLogo { top: 15vw; left: 0; margin-left: 0; padding: 0 30vw; }
  #container.sub #main { min-height: 65vw; background-size: 260% auto; } }
/*-------------------------------------------------
	++ CONTENTS 
-------------------------------------------------*/
.section { position: relative; padding: 60px 0; }
.section .secHead { margin-bottom: 60px; }
.section .secHead .headText { margin-top: 45px; text-align: left; }

#container.sub #content { position: relative; padding: 50px 0; }
#container.sub #content:before { content: ""; width: 100%; height: 5vw; background: url("../img/wave_cream2.png") center top no-repeat; background-size: 100% auto; position: absolute; top: -4.9vw; left: 0; }

#container.sub.program #content { padding: 0; }
#container.sub.program #content:before { background: url("../img/wave_white.png") center top no-repeat; background-size: 100% auto; }

@media screen and (max-width: 759px) { /*SP*/
  .section { padding: 10vw 0; }
  .section .secHead { margin-bottom: 5vw; }
  .section .secHead h2 { padding: 0 5vw; }
  #container.sub #content { padding: 15vw 0; } }
/*-------------------------------------------------
	++ HOME 
-------------------------------------------------*/
#info { background-color: #f3eee3; padding: 60px 0 120px 0px; }
#info .infolist { padding: 0 45px; margin-bottom: 45px; }
#info .infolist ul li { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; text-align: left; margin-bottom: 20px; }
#info .infolist ul li .date { width: 150px; font-weight: 700; font-size: 22px; letter-spacing: 2px; }
#info .infolist ul li .title { width: calc(100% - 150px); padding-left: 20px; font-weight: 400; font-size: 22px; letter-spacing: 2px; }
#info .infolist ul li:nth-last-of-type(1) { margin-bottom: 0; }
#info .infoContents { margin-top: 100px; }

.presentBox { margin: 0 auto; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; align-items: center; width: 534px; border: 1px solid #807d77; padding: 15px; }
.presentBox .img { width: 150px; padding: 0 15px; }
.presentBox .img img { width: 100%; height: auto; }
.presentBox .detail { width: calc(100% - 150px); color: #51708c; line-height: 180%; }
.presentBox .detail .text { font-weight: 300; font-size: 14px; }
.presentBox .detail a { display: block; color: #51708c !important; }
.presentBox .detail strong { display: block; margin-top: 15px; font-size: 28px !important; }

#container.sub .infoContents { margin-top: 100px; }

@media screen and (max-width: 759px) { /*SP*/
  #info { padding: 10vw 0 20vw 0px; }
  #info .infolist { padding: 0 5vw; margin-bottom: 5vw; }
  #info .infolist ul li { margin-bottom: 3vw; }
  #info .infolist ul li .date { width: 100%; font-size: 3.4vw; }
  #info .infolist ul li .title { width: 100%; padding-left: 0; font-size: 3.4vw; }
  .presentBox { width: 100%; padding: 3vw; }
  .presentBox .img { width: 30%; padding: 0; }
  .presentBox .detail { width: 70%; font-size: 2.8vw; padding-left: 3vw; }
  .presentBox .detail .text { font-size: 3vw; }
  .presentBox .detail strong { margin-top: 3vw; font-size: 4.2vw !important; }
  #container.sub .infoContents { margin-top: 10vw; } }
#onairinfo { padding: 100px 0; background-color: #fccd44; position: relative; }
#onairinfo:before { content: ""; width: 100%; height: 23vw; background: url("../img/wave_yellow1.png") center top no-repeat; background-size: 100% auto; position: absolute; top: -17vw; left: 0; }
#onairinfo .secHead { margin-bottom: 100px; }
#onairinfo #tab-btn-set { border-bottom: 5px solid #c2c2c2; margin-bottom: 25px; }
#onairinfo #tab-btn-set .tab-btn .label { font-size: 22px; font-weight: 700; letter-spacing: 2px; color: #51708c; }
#onairinfo #tab-btn-set .tab-btn::after { height: 5px; bottom: -5px; background-color: #51708c; }
#onairinfo #tab-contents { padding: 0; }
#onairinfo .onair-info-head { color: #51708c; }
#onairinfo .onair-info-head .onair-info-title { font-size: 20px; }
#onairinfo .onair-info { text-align: left; }

@media screen and (max-width: 759px) { /*SP*/
  #onairinfo { padding: 10vw 0; }
  #onairinfo .secHead { margin-bottom: 5vw; }
  #onairinfo #tab-btn-set { margin-bottom: 5vw; }
  #onairinfo #tab-btn-set .tab-btn .label { font-size: 4.2vw; }
  #onairinfo .onair-info-head .onair-info-title { font-size: 3.8vw; } }
#timetable { padding: 140px 0 200px 0; background: url("../img/bg01.jpg") center top no-repeat; background-size: cover; background-attachment: fixed; position: relative; }
#timetable:before { content: ""; width: 100%; height: 5vw; background: url("../img/wave_yellow2.png") center top no-repeat; background-size: 100% auto; position: absolute; top: 0; left: 0; }
#timetable .secInner { position: absolute; width: 100%; height: 50%; background: url("../img/bg02.jpg") center top no-repeat; background-size: cover; background-attachment: fixed; z-index: 0; top: 50%; left: 0; }
#timetable .secInner:before { content: ""; width: 100%; height: 23vw; background: url("../img/wave_yellow3.png") center top no-repeat; background-size: 100% auto; position: absolute; top: -13vw; left: 0; }
#timetable .timetableWrap { width: 100%; background-color: #FFF; padding: 60px 10px 100px 10px; }
#timetable .timetableList { text-align: left; padding: 0 50px; }
#timetable .timetableList dl { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; align-items: center; margin-bottom: 45px; }
#timetable .timetableList dl dt { color: #51708c; text-align: center; font-size: 20px; width: 120px; font-weight: 700; letter-spacing: 2px; }
#timetable .timetableList dl dd { border-left: 2px solid #51708c; width: calc(100% - 120px); padding: 10px 0 10px 20px; }
#timetable .timetableList dl dd h3 { color: #51708c; font-size: 18px; }
#timetable .timetableList dl dd h3 a { color: #51708c !important; }
#timetable .timetableList dl dd .text { font-size: 14px; }
#timetable .timetableList dl:nth-last-of-type(1) { margin-bottom: 0; }
#timetable .bnrList { margin-top: 120px; }
#timetable .bnrList ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; align-items: center; justify-content: center; }
#timetable .bnrList ul li { width: 25%; }

@media screen and (max-width: 759px) { /*SP*/
  #timetable { padding: 20vw 0; background-size: auto 120%; background-attachment: scroll; }
  #timetable .secInner { background-size: auto 120%; background-attachment: scroll; }
  #timetable .timetableWrap { padding: 5vw; }
  #timetable .timetableList { padding: 0; }
  #timetable .timetableList dl { margin-bottom: 5vw; }
  #timetable .timetableList dl dt { background-color: #51708c; color: #FFF; font-size: 3.8vw; width: auto; padding: 0 1vw; }
  #timetable .timetableList dl dd { border-left: 0; border-bottom: 2px solid #51708c; width: 100%; padding: 0 0 5vw 0; }
  #timetable .timetableList dl dd h3 { color: #51708c; font-size: 3.8vw; }
  #timetable .timetableList dl dd .text { font-size: 3vw; }
  #timetable .bnrList { margin-top: 10vw; }
  #timetable .bnrList ul li { padding: 0 5vw; } }
#about { background-color: #f3eee3; position: relative; }
#about:before { content: ""; width: 100%; height: 5vw; background: url("../img/wave_cream.png") center top no-repeat; background-size: 100% auto; position: absolute; top: -4.9vw; left: 0; }
#about .secHead { margin-bottom: 100px; }
#about .aboutWrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; align-items: center; padding: 0 50px; }
#about .aboutWrap .photo { width: 200px; }
#about .aboutWrap .photo img { width: 100%; height: auto; }
#about .aboutWrap .photo .name { font-weight: 700; }
#about .aboutWrap .detail { width: calc(100% - 200px); text-align: left; padding-left: 30px; }
#about .aboutWrap .detail h3 { color: #51708c; font-size: 22px; margin-bottom: 25px; }
#about .aboutWrap .detail .text { line-height: 2; }
#about .snsList { margin-top: 40px; }
#about .snsList ul li { display: inline-block; margin-right: 20px; }

@media screen and (max-width: 759px) { /*SP*/
  #about .secHead { margin-bottom: 5vw; }
  #about .aboutWrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; align-items: center; padding: 0; }
  #about .aboutWrap .photo { width: 100%; padding: 0 20vw; }
  #about .aboutWrap .detail { width: 100%; text-align: center; padding-left: 0; margin-top: 5vw; }
  #about .aboutWrap .detail h3 { font-size: 4.2vw; margin-bottom: 3vw; }
  #about .snsList { margin-top: 10vw; }
  #about .snsList ul li { display: inline-block; margin: 0 3vw; } }
#sns { padding: 120px 0 230px 0; background: url("../img/bg03.jpg") center top no-repeat; background-size: cover; background-attachment: fixed; }
#sns .secInner { position: absolute; width: 100%; height: 50%; background: url("../img/bg04.jpg") center top no-repeat; background-size: cover; background-attachment: fixed; z-index: 0; top: 50%; left: 0; }
#sns .secInner:before { content: ""; width: 100%; height: 15vw; background: url("../img/wave_yellow4.png") center top no-repeat; background-size: 100% auto; position: absolute; top: -8vw; left: 0; }
#sns .secHead { margin-bottom: 190px; }
#sns .snsWrap { display: flex; flex-wrap: wrap; }
#sns .snsWrap .twitterWrap { width: 50%; background-color: #FFF; position: relative; }
#sns .snsWrap .twitterWrap:before { display: block; content: ""; width: 100%; height: 30px; position: absolute; top: -70px; left: 0; background: url("../img/icon_twitter.png") center top no-repeat; background-size: 30px auto; }
#sns .snsWrap .instaWrap { width: 50%; background-color: #FFF; position: relative; padding: 15px; }
#sns .snsWrap .instaWrap:before { display: block; content: ""; width: 100%; height: 30px; position: absolute; top: -70px; left: 0; background: url("../img/icon_instagram.png") center top no-repeat; background-size: 30px auto; }
#sns .snsWrap .instaWrap ul { display: flex; flex-wrap: wrap; }
#sns .snsWrap .instaWrap ul li { width: 32%; margin-right: 2%; margin-bottom: 10px; }
#sns .snsWrap .instaWrap ul li:nth-of-type(3n) { margin-right: 0; }
#sns .snsWrap .instaWrap ul li img { width: 100%; height: auto; }

@media screen and (max-width: 759px) { /*SP*/
  #sns { padding: 20vw 0; background-size: auto 120%; background-attachment: scroll; }
  #sns .secInner { background-size: auto 120%; background-attachment: scroll; }
  #sns .secHead { margin-bottom: 25vw; }
  #sns .snsWrap .twitterWrap { width: 100%; }
  #sns .snsWrap .twitterWrap:before { height: 10vw; top: -15vw; }
  #sns .snsWrap .instaWrap { margin-top: 30vw; width: 100%; padding: 3vw; }
  #sns .snsWrap .instaWrap:before { height: 10vw; top: -15vw; } }
/*-------------------------------------------------
	++ SUB 
-------------------------------------------------*/
#programHead { background-color: #FFF; padding: 110px 0 200px 0; }
#programHead .secHead { margin-bottom: 35px; }
#programHead .catch { font-size: 20px; font-weight: 700; letter-spacing: 1px; }
#programHead .bnr { margin-top: 45px; }
#programHead .presentBox { margin-top: 45px; }

#archiveselect { background-color: #fccd44; padding-bottom: 75px; }
#archiveselect .secHead { margin-bottom: 45px; }
#archiveselect .secHead h2 { color: #51708c; font-size: 22px; letter-spacing: 2px; }
#archiveselect:before { content: ""; width: 100%; height: 5vw; background: url("../img/wave_yellow5.png") center top no-repeat; background-size: 100% auto; position: absolute; top: -4.9vw; left: 0; }
#archiveselect:after { content: ""; width: 100%; height: 5vw; background: url("../img/wave_yellow6.png") center top no-repeat; background-size: 100% auto; position: absolute; bottom: -4.9vw; left: 0; }
#archiveselect .custom-selectbox { padding: 0 50px; }
#archiveselect .custom-selectbox .selectWrap:after { margin-top: -5px; border-width: 17px 10px 0; }
#archiveselect .custom-selectbox select { font-size: 20px; font-weight: 700; letter-spacing: 2px; }

#program { padding-top: 150px; }

@media screen and (max-width: 759px) { /*SP*/
  #programHead { padding: 10vw 0 15vw 0; }
  #programHead .secHead { margin-bottom: 5vw; }
  #programHead .catch { font-size: 3.8vw; }
  #programHead .bnr { margin-top: 10vw; }
  #programHead .bnr img:not(.fit) { max-width: 50%; }
  #programHead .presentBox { margin-top: 5vw; }
  #archiveselect { padding-bottom: 10vw; }
  #archiveselect .secHead { margin-bottom: 10vw; }
  #archiveselect .secHead h2 { font-size: 4.2vw; }
  #archiveselect .custom-selectbox { padding: 0 5vw; }
  #archiveselect .custom-selectbox .selectWrap:after { margin-top: -1vw; border-width: 3vw 2vw 0; }
  #archiveselect .custom-selectbox select { font-size: 3.8vw; padding: 2vw 0 2vw 5vw; }
  #program { padding-top: 15vw; } }
.entryBlock { text-align: left; line-height: 1.8; font-size: 18px; margin-bottom: 100px; }
.entryBlock .date { font-size: 22px; font-weight: 700; letter-spacing: 2px; }
.entryBlock h3 { font-size: 22px; color: #51708c; margin-bottom: 30px; }
.entryBlock h3 a { color: #51708c; }
.entryBlock a.colorBlue { color: #51708c; }
.entryBlock a.big { font-size: 22px; }
.entryBlock p { margin-bottom: 20px; }
.entryBlock img { max-width: 100%; height: auto; }

@media screen and (max-width: 759px) { /*SP*/
  .entryBlock { font-size: 3.4vw; margin-bottom: 10vw; }
  .entryBlock .date { font-size: 4.2vw; }
  .entryBlock h3 { font-size: 4.2vw; margin-bottom: 5vw; }
  .entryBlock a.big { font-size: 4.2vw; }
  .entryBlock p { margin-bottom: 3vw; } }
/*-------------------------------------------------
	++ FORM 
-------------------------------------------------*/
#messageform .secHead { margin-bottom: 100px; }

#presentform .secHead { margin-bottom: 80px; }
#presentform .presentBox { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%; margin-bottom: 100px; border: 0; }
#presentform .presentBox .img { width: 320px; padding: 0; }
#presentform .presentBox .img img { width: 100%; height: auto; }
#presentform .presentBox .detail { width: calc(100% - 320px); line-height: 1.8; padding-left: 60px; letter-spacing: 2px; text-align: left; color: #333; }
#presentform .presentBox .detail h3 { font-size: 20px; margin-bottom: 15px; }

.message { padding-bottom: 50px; }
.message .message-subtitle { font-size: 22px; margin: 20px 0; text-align: left; }
.message .formAtt { margin: 20px 0; text-align: left; font-size: 18px; }
.message .sub-link { margin: 20px 0 80px 0; font-size: 20px; }
.message .sub-link a { margin: 0 20px; }
.message #form-notice { margin: 20px 0; padding: 0 80px; text-align: left; font-size: 18px; }
.message #form-notice .formAtt { margin-bottom: 20px; }
.message table { width: 100%; border-collapse: collapse; margin-bottom: 60px; }
.message table tr th { vertical-align: top; width: 35%; text-align: left; font-size: 20px; padding: 20px 0; }
.message table tr td { width: 65%; text-align: left; font-size: 20px; padding: 10px 0; }
.message.thanks { padding: 40px; }
.message.thanks h3 { font-size: 64px; font-weight: 700; margin-bottom: 15px; letter-spacing: 5px; }
.message.thanks .text { margin-top: 50px; font-size: 20px; letter-spacing: 2px; }

#hw-message input[type="text"], #hw-message input[type="password"], #hw-message input[type="tel"], #hw-message input[type="email"], #hw-message input[type="number"], #hw-message table textarea, #hw-message table select { width: 100%; border: 2px solid #6c6964; background: #f3eee3; -webkit-appearance: none; padding: 1rem; border-radius: 0; font-size: 20px; }

#hw-message table textarea { height: 200px; }

#hw-message input:focus, #hw-message textarea:focus { outline: none; border: 2px solid #6c6964; }

#hw-message input[type="text"], #hw-message input[type="password"], #hw-message input[type="tel"], #hw-message input[type="email"], #hw-message input[type="number"] { vertical-align: top; }

#hw-message input[type="radio"] { display: none; }

#hw-message input[type="radio"] + label { padding-left: 40px; position: relative; margin-right: 40px; }

#hw-message input[type="radio"] + label::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 30px; height: 30px; border: 2px solid #6c6964; border-radius: 50%; }

#hw-message input[type="radio"]:checked + label::after { content: ""; display: block; position: absolute; top: 0px; left: 0px; width: 30px; height: 30px; background: #6c6964; border-radius: 50%; }

.custom-selectbox { position: relative; }
.custom-selectbox .selectWrap { position: relative; }
.custom-selectbox .selectWrap:before, .custom-selectbox .selectWrap:after { content: ""; position: absolute; display: block; }
.custom-selectbox .selectWrap:after { top: 50%; right: 15px; margin-top: -3px; width: 0; height: 0; border: solid transparent; border-top-color: #6c6964; border-width: 7px 7px 0; }
.custom-selectbox select { z-index: 1; width: 100%; height: 60px; display: block; -webkit-appearance: none; border: 2px solid #6c6964; background-color: #f3eee3; font-size: 20px; padding: 0 0 0 20px; }
.custom-selectbox select:focus { outline: none; border: 2px solid #6c6964; }

#button-area { margin-top: 60px; }

#form-submit, #form-reset { -webkit-appearance: none; border: 1px solid #51708c; background: #51708c; min-width: 200px; padding: 10px; border-radius: 10px; margin: 0 40px; font-size: 22px; font-weight: 700; cursor: pointer; color: #fff; }
#form-submit:hover, #form-reset:hover { opacity: .9; }

@media screen and (max-width: 759px) { /*SP*/
  #messageform .secHead { margin-bottom: 10vw; }
  #presentform .secHead { margin-bottom: 10vw; }
  #presentform .presentBox { margin-bottom: 10vw; }
  #presentform .presentBox .img { width: 100%; padding: 0 20vw; }
  #presentform .presentBox .detail { margin-top: 3vw; width: 100%; padding-left: 0; }
  #presentform .presentBox .detail h3 { font-size: 3.8vw; margin-bottom: 3vw; }
  .message { padding-bottom: 5vw; }
  .message .message-subtitle { font-size: 4.2vw; margin: 5vw 0; }
  .message .formAtt { margin: 5vw 0; font-size: 3.4vw; }
  .message .sub-link { margin: 3vw 0 5vw 0; font-size: 3.8vw; }
  .message .sub-link a { margin: 0 3vw; }
  .message #form-notice { margin: 3vw 0; padding: 0; font-size: 3.4vw; }
  .message #form-notice .formAtt { margin-bottom: 3vw; }
  .message table { margin-bottom: 5vw; }
  .message table tr th { display: block; width: 100%; font-size: 3.4vw; padding: 3vw 0 0 0; }
  .message table tr td { display: block; width: 100%; text-align: left; font-size: 3.4vw; padding: 3vw 0; }
  .message.thanks { padding: 10vw 0; }
  .message.thanks h3 { font-size: 22px; margin-bottom: 3vw; letter-spacing: 2px; }
  .message.thanks .text { margin-top: 0; font-size: 16px; letter-spacing: 0; }
  #hw-message input[type="text"], #hw-message input[type="password"], #hw-message input[type="tel"], #hw-message input[type="email"], #hw-message input[type="number"], #hw-message table textarea, #hw-message table select { font-size: 16px; }
  #hw-message input[type="radio"] + label { padding-left: 10vw; margin-right: 10vw; font-size: 3.8vw; }
  #hw-message input[type="radio"] + label::before { width: 7vw; height: 7vw; }
  #hw-message input[type="radio"]:checked + label::after { width: 7vw; height: 7vw; }
  .custom-selectbox { position: relative; }
  .custom-selectbox .selectWrap { position: relative; }
  .custom-selectbox .selectWrap:before, .custom-selectbox .selectWrap:after { content: ""; position: absolute; display: block; }
  .custom-selectbox .selectWrap:after { top: 50%; right: 15px; margin-top: -3px; width: 0; height: 0; border: solid transparent; border-top-color: #6c6964; border-width: 7px 7px 0; }
  .custom-selectbox select { height: auto; }
  #button-area { margin-top: 10vw; }
  #form-submit, #form-reset { min-width: 30vw; padding: 2vw 5vw; margin: 0 3vw; font-size: 4.2vw; } }
/*-------------------------------------------------
	++ FOOTER
-------------------------------------------------*/
#jwaveFooter { background-color: #fccd44; padding: 50px 0; }
#jwaveFooter .commonSet .footerLogo { margin-bottom: 30px; }
#jwaveFooter .commonSet .copyRight { width: 100%; text-align: center; font-size: 14px; }

@media screen and (max-width: 759px) { /*SP*/
  #jwaveFooter { padding: 6vw 0; }
  #jwaveFooter .commonSet .footerLogo { margin-bottom: 3vw; padding: 0 25vw; }
  #jwaveFooter .commonSet .copyRight { font-size: 3vw; } }
/*inview
---------------------------------------------------------------------------*/
.up { overflow: hidden; position: relative; opacity: 0; bottom: -80px; }

.upstyle { opacity: 1; bottom: 0px; transition: 1s 0.3s; }


/*-------------------------------------------------
	++ ADDITION
-------------------------------------------------*/

ul.cts_bnr {
  margin: 20px auto;
  display: flex;
  justify-content: center;
  flex-flow: row wrap;
}
ul.cts_bnr li {
  width: 360px;
  margin: 10px 30px;
}
ul.cts_bnr li img {
  max-width: 340px;
}

