@charset "UTF-8";
/* CSS Document */
/* RESET
-----------------------------------------*/
html {
  background: #fff;
  overflow-y: scroll; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse; }

fieldset, img {
  border: 0; }

address, caption, cite, code, dfn, th, var {
  font-style: normal;
  font-weight: normal; }

li { list-style: none;
  text-align: left;
}

caption, th { text-align: left; }

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

q:before, q:after { content: ''; }

abbr, acronym {
  border: 0;
  font-variant: normal; }

sup { vertical-align: text-top; }

sub { vertical-align: text-bottom; }

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit; }

input, textarea, select { 
	*font-size: 100%;
	vertical-align: middle;
}

legend { color: #000000; }

table {
  font-size: inherit;
  font: 100%; }

pre, code, kbd, samp, tt {
  font-family: monospace;
  *font-size: 108%;
  line-height: 100%; }

img { vertical-align: bottom; }

a { outline: 0; }

* {
  margin: 0;
  padding: 0; }

img { border: none; }

/* CSS Document */
.clearfix { zoom: 1; }

.clearfix:after {
  content: "";
  display: block;
  clear: both; }

/*モジュール*/
/* ---------------------------------------------
  font Style
--------------------------------------------- */
.fBold { font-weight: bold; }
.fItalic { font-style: italic; }
.fnormal { font-weight: normal; }

.cap {
  vertical-align:super;
  font-size:9px; }

.pre { white-space: pre; }

/* GENERAL
-----------------------------------------*/
/*-- 共通 --*/
img {
  border: 0;
  vertical-align: top; }

html, body {
  height: 100%;
  margin: 0; }

body {
font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", YuMincho, "游明朝", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 18px;
  color: #333;
  line-height: 1.0;
  min-width: 960px;
}

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

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

a img { vertical-align: top; }

* { box-sizing: border-box; }

/*===========================

            PC

===========================*/
.pc { display: block!important; }
.sp { display: none!important; }

.wrapper{
	background: url(/assets/images/bg.gif) repeat left top;
    text-align: center;
	position: relative;
	overflow: hidden;
}
.wrapper:before {
	content: url(/assets/images/gold01.png);
	position: absolute;
    top: -4px;
    left: 62%;
	width: 558px;
    height: 458px;
}
.wrapper:after {
	content: url(/assets/images/gold02.png);
	position: absolute;
    top: 862px;
    right: 68%;
	width: 401px;
    height: 618px;
}

.inner,section {
	width: 960px;
	margin: 0 auto;
}

/*========  Header  ========*/
header {
}
header .inner {
	height: 800px;
	padding-top: 20px;
	position: relative;
}
header h1 {
	padding-left: 120px;
}
header ul {
	position: absolute;
    bottom: 14px;
}
header ul li:first-child {
	margin-bottom: 30px;
}


/*========  応募ボタン  ========*/
ul li.formBtn {
    position: relative;
}
ul li.formBtn {
    position: relative;
    text-align: center;
}
ul li.formBtn img.one {
    position: absolute;
    top: -15px;
    left: 36%;
}
.btnBox .formBtn {
	margin-bottom: 5px;
}


/*========  renew  ========*/
.renew {
	padding-top: 65px;
}
.renew h2 {
	margin-bottom: 30px;
}
.renew .txtBox {
	line-height: 2.2;
}
.renew .rec {
	margin-top: 65px;
	padding: 55px 80px 50px;
}
.renew .rec h3 {
	margin-bottom: 5px;
}
.renew .rec ul {
	display: flex;
}
.renew .rec ul li {
	flex: 0 0 240px;
	margin-right: 40px;
}
.renew .rec ul li:last-child {
	margin-right: 0;
}
.renew .rec ul li .txt {
    margin-top: 25px;
}
.renew .rec ul li .txt p {
    margin-top: 25px;
    font-size: 16px;
    line-height: 1.6;
    text-align: left;
}
.renew ol {
	margin-top: 10px;
}
.renew ol li {
    font-size: 14px;
	color: #555;
	text-align: center;
    margin-bottom: 10px;
}


/*========  item  ========*/
.item {
	margin-bottom: 80px;
	padding-top: 80px;
}
.item h2 {
	margin-bottom: 35px;
}
.item ul {
	width: 932px;
	margin: 45px auto 20px;
	display: flex;
}
.item ul li {
	margin-right: 8px;
}
.item ul li:last-child {
	margin-right: 0;
}
.item ol {
	margin-top: 40px;
	margin-left: 75px;
}
.item ol li {
    font-size: 14px;
	color: #555;
	text-align: left;
    margin-bottom: 10px;
}


/*========  venue  ========*/
.wrap {
}
.wrap.gaiyou {
    margin-top: 90px;
}
.obi {
    margin-top: 32px;
    padding: 16px 0;
}
.venue {
}
.venue .txtBox {
    margin: 45px 0;
    line-height: 2.2;
}
.venue .slider {
	width: 806px;
	margin: 0 auto 80px;
}
.slider .slick-slider {
	margin-top: 2px;
}

.slider .slick-prev {
	width: 40px;
	height: 40px;
    left: -50px;
}
.slider .slick-next {
	width: 40px;
	height: 40px;
    right: -50px;
}
.slider .slick-prev:before {
	content: "";
	width: 10px;
    height: 10px;
    border-top: 1px solid #ecff19;
    border-right: 1px solid #ecff19;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
    position: absolute;
    top: 15px;
    right: 12px;
}
.slider .slick-next:before {
	content: "";
	width: 10px;
    height: 10px;
    border-top: 1px solid #ecff19;
    border-right: 1px solid #ecff19;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 15px;
    left: 12px;
}




/*========  aft  ========*/
.aft {
	margin: 90px auto 50px;
}
section.aft h2 img {
    margin: 0 auto;
}
.aft .txtBox {
	margin-top: 45px;
	line-height: 2.22
}


/*========  flBox  ========*/
.flBox {
    display: flex;
}
.flBox li,
.flBox li img {
    width: 100%;
}


/*========  voice  ========*/
.voice {
	margin: 90px auto 80px;
}
.voice .vBox {
	width: 800px;
    margin: 32px auto 65px;
}
.voice .vBox li {
    display: flex;
    background: #fff;
    text-align: left;
    font-size: 16px;
    line-height: 1.75;
    align-items: center;
}
.voice .vBox li p {
	flex: 0 0 50%;
    padding: 0 40px;
    letter-spacing: -1px;
}

.vTitle {
	font-size: 20px;
	line-height: 28px;
	display: block;
	margin-bottom: -18px;
}
/*========  terms  ========*/
.terms {
}
.terms table {
    width: 795px;
    margin: 32px auto 0;
    
}
.terms table th,
.terms table td {
	padding: 23px 0 25px 16px;
    text-align: left;
    line-height: 1.6;
}
.terms table th {
	vertical-align: baseline;
}

/*
.terms table tr:first-child td {
    font-size: 22px;
}
*/

.terms table tr:last-child td li {
	margin-bottom: 13px;
}
.terms table tr:last-child td li:last-child {
	margin-bottom: 0;
}
.terms table td span {
    font-size: 10px;
    padding-right: 5px;
    vertical-align: top;
    padding-top: 5px;
    display: inline-block;
}
.terms table th {
	width: 183px;
}
.terms table td ul li span.cmt {
	font-size: 14px;
	color: #333;
}
.terms table tr:last-child td li:last-child {
	margin-top: -18px;
}

/*========  method  ========*/
.method {
	margin: 90px auto;
}
.method h2 {
	margin-bottom: 32px;
}


/*========  place  ========*/
.place {

}
.place .map {
	margin: 32px auto 80px;
	display: flex;
}
.place .map p {
	flex: 0 0 480px;
	height: 312px;
}
.place .map .access {
	margin-left: 34px;
	text-align: left;
}
.place .map .access dt {
	font-size: 20px;
	line-height: 1.8;
	margin-bottom: 10px;
}
.place .map .access dt span {
	display: block;
	font-size: 24px;
}
.place .map .access dd {
	line-height: 1.6;
}
.place .map .access dd.mt {
	margin-bottom: 5px;
}
.place .map .access .linkBtn {
	margin-top: 30px;
    height: 48px;
}
.place .map .access .linkBtn a {
	width: 256px;
	height: 48px;
	display: block;
	color: #fff;
    padding: 15px 0 0 1.5rem;
    position: relative;
}
.place .map .access .linkBtn a:after {
    content: "";
    width: 10px;
    height: 10px;
    border-top: 1px solid #ecff19;
    border-right: 1px solid #ecff19;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 19px;
    right: 1.2rem;
}


/*========  faq  ========*/
.faq {
	padding: 90px 0 80px;
}
.faq ul {
	width: 800px;
	margin: 32px auto 0;
	text-align: left;
}
.faq ul li {
	margin-bottom: 25px;
}
.faq ul li:last-child {
	margin-bottom: 0;
}
.faq ul li .que,
.faq ul li .answer {
	padding: 8px 20px 8px 25px;
    line-height: 1.55;
}
.faq ul li p span {
	font-size: 24px;
	padding-right: 12px;
}

.faq ul li .que  {
    position: relative;
    cursor: pointer;
}
.faq ul li .que span.switch {
	position: absolute;
    width: 20px;
    height: 20px;
    right: 30px;
    top: 17px;
}
.faq ul li .que span.switch:before,
.faq ul li .que span.switch:after {
    content: "";
    display: block;
    width: 20px;
    height: 2px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    -webkit-transition: all .3s 0s ease;
    transition: all .3s 0s ease;
}
.faq ul li .que span.switch:after {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}
.faq ul li .que span.switch.open:after {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
}

.faq ul li .answer {
	font-size: 16px;
	vertical-align: middle;
	display: none;
}
.faq ul li .answer p {
    text-indent: -37px;
    padding-left: 38px;
}
.faq ul li .answer p span {
	vertical-align: middle;
}


/*========  footer  ========*/
footer {
	background: #ececec;
}
footer ul {
	display: flex;
    align-items: center;
	padding: 32px 0;
	font-size: 14px;
}
footer ul li:first-child {
	/*margin-right: auto;*/
}
footer ul li.sec {
	padding-right: 45px;
	position: relative;
	padding-top: 2px;
}
footer ul li.sec:after {
	content: "";
    width: 1px;
    height: 14px;
    position: absolute;
    background: #333;
    top: 1px;
    right: 22px;
    opacity: 0.5;
	padding-top: 2px;
}
footer ul li.third {
	padding-right: 45px;
	padding-top: 3px;
}
footer ul li:last-child {
	font-size: 12px;
	padding-top: 3px;
}
footer a:hover,
footer a:hover img {
	opacity: 0.7;
}
/*追加=======================

form

===========================*/
.secForm{
  background-image: url(/assets/images/form/bk_01.png);
  background-repeat: repeat;
  padding:1%;
  margin-bottom:4%;
}
.pinkbk{
  background-image: url(/assets/images/form/bk_02.png);
}
.form_inner{
  border: solid 1px #23883C;
  padding: 1%;
}
.innerPink{
  border: solid 1px #ef567e;
}
.form_outline h2{
  padding:5%;
  text-align: center;
}
.back_w{
  background: #fff;
  padding:3% 0;
}
.infoText{
  text-align: left;
  padding: 2% 0;
  border-top: dotted 3px #cfb214;
  margin: 0 2%;
}
.textsec, .textsec02{
  padding:2%;
}
.textsec h4{
  color:#23883c;
  padding-bottom:1%;
}
.pink h4{
  color:#ef567e;
}
.textsec ul{
  line-height: 1.4em;
  font-size:16px;
}
.textsec02{
  color:#cfb214;
  line-height: 1.4em;
}
.textsec02 p{
  font-size:16px;
}
/*formarea*/
.formArea img{
  margin:0 auto;
}
form{
  margin:3% 0;
}
.formAuter {
    display: table;
    border-top: 3px dotted #bce0c5;
    width: 95%;
    margin:3% auto;
}
.auterPink{
  border-top: 3px dotted #c0b88a;
}
.formAuter dl{
  display: table-row;
}
.formAuter dl dt{
  display: table-cell;
  vertical-align: middle;
  width: 35%;
  padding: 25px 16px 25px;
  font-size: 16px;
  letter-spacing: 1px;
  line-height: 1.6;
  border-bottom: 3px dotted #bce0c5;
  position: relative;
  color:#23883c;
  text-align: left;
}
.areaPink dl dt{
  border-bottom: 3px dotted #c0b88a;
  color:#ef567e;
}
.formAuter dl dt.required:after{
  content: "";
  width: 32px;
  height: 16px;
  background: url(/assets/images/form/ico_required.png) no-repeat left top;
  background-size: 32px 16px;
  display: inline-block;
  margin-left: 1em;
  vertical-align: middle;
  margin-top: -2px;
}
.formAuter dl dd{
  display: inline-flex;
  background: #FFF;
  color: #333333;
  font-size: 16px;
  line-height: 1.6;
  border-bottom: 3px dotted #bce0c5;
  position: relative;
  width:98%;
  padding:25px 0;
}
.formAuter dl dd.wide{
  padding: 25px 0;
}
.areaPink dl dd{
  border-bottom: 3px dotted #c0b88a;
}
.formAuter dl dd ul.nameWrap{
  margin:0 10px 0 0;
  width:45%;
  text-align: left;
}

.formArea dl dd ul li.nametxt{
    width: 2.6em;
    margin: 6px 0 0;
    position: relative;
}
.formArea dl dd ul li.nameform {
    position: relative;
    width: 100%;
    margin:5px 0;
    text-align: left;
}
.formArea dl dd ul li.notes{
  font-size:14px;
  margin-top:10px;
  text-align: left;
}
.formArea dl dd ul li.selectOuter {
    display: inline-block;
    position: relative;
}
.formArea dl dd ul.data_box{
  display: flex;
  text-align: left;
  width:100%;
}
.formArea dl dd ul.data_box li{
  margin-right:10px;
}
input[type="text"]{
  width:200px;
  padding:10px;
}
input[type="email"], input[type="tel"]{
  width:470px;
  padding:10px;
}
select#year, select#month{
  height: 30px;
  width:70px;
}
span.customSelectInner, input, textarea{
  border:solid 1px #bfbfbf;
  height:30px;
}
textarea{
  width:470px;
  height:180px;
  padding:10px;
}
.privacy_wrap p{
  font-size: 14px;
  margin-bottom: 15px;
}
.privacy_wrap p a{
  text-decoration: underline;
}
/*.cbxbdForm {
    background: url(/assets/images/form/checkbox.png) no-repeat left top;
    background-size: 20px auto;
    line-height: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
    padding: 0;
    margin: 0 auto;
    cursor: pointer;
    overflow: hidden;
}
.cbxbdForm input {
    opacity: 0;
    margin-right: 15px;
}
input[type="checkbox"]{
  box-sizing: border-box;
  padding: 0;
  vertical-align: middle;
  height: auto;
}*/
span.txt{
  font-size:16px;
}
span.error {
    position: static;
    color: #af1111;
    font-size: 0.8em;
    display: block;
    margin-top: 5px;
    clear: both;
    font-weight: bold;
  }
  .privacy_wrap span.error {
    position: static;
    display: block;
    text-align: center;
    margin-top: 5px;
}
.btnArea .btn{
  width:40%;
  margin:0 auto;
}
.btnArea .btn button {
    background-color: #33bb80;
    color: #fff;
    text-align: center;
    font-size: 1.0em;
    width: 100%;
    padding: 20px 0;
    margin-top:3%;
    -moz-transition: 0.4s;
    -o-transition: 0.4s;
    -webkit-transition: 0.4s;
    transition: 0.4s;
    border:none;
    -webkit-appearance: button;
    cursor: pointer;
    text-transform: none;
    overflow: visible;
}
.btnArea .pinkBtn button{
  background: #ef567e;
}
/*confirm*/
.con_wrap{
  background: url(/assets/images/bg.gif) repeat left top;
  text-align: center;
  position: relative;
  overflow: hidden;
}
p.b16pt{
  margin: 5% 0 3%;
  color: #23883c;
  font-size: 16px;
  font-weight: bold;
}
.combtn{
  display: flex;
}
.reBtn button{
  background:#808080 !important;
}
/*===========================

            text

===========================*/

.bold {
	font-weight: bold;
}

/*===========================

            SP

===========================*/
@media screen and (max-width: 767px) {
	.pc { display: none!important; }
	.sp { display: block!important; }

	body {
		min-width: 100vw;
	}

	img { width: 100%; }
    
	.wrapper{
		background: url(/assets/images/bg.gif) repeat left top;
	    text-align: center;
		position: relative;
		overflow: hidden;
		font-size: 12px;
	}
	.wrapper:before {
		content: "";
		position: absolute;
	    top: -4px;
	    left: 57%;
		width: 251px;
	    height: 293px;
	    display:inline-block;
		background: url(/assets/images/gold01.png) no-repeat;
		background-size:contain;
	}
	.wrapper:after {
		content: "";
		position: absolute;
	    top: 723px;
	    right: 43%;
		width: 250px;
	    height: 309px;
	    display:inline-block;
		background: url(/assets/images/gold02.png) no-repeat;
		background-size:contain;
	}
	.inner,section {
		width: 100%;
		margin: 0 auto;
	}

	/*========  Header  ========*/
	header .inner {
		height: 632px;
		padding-top: 20px;
		position: relative;
	}
	header h1 {
		padding: 0 8%
	}
	header ul {
		position: absolute;
	    bottom: 14px;
	}
	header ul li:first-child {
		margin-bottom: 30px;
	}

	/*========  応募ボタン  ========*/
	ul li.formBtn {
	    position: relative;
		padding: 0 4%
	}
	ul li.formBtn {
	    position: relative;
	    text-align: center;
	}
	ul li.formBtn img.one {
	    position: absolute;
	    top: -9px;
	    left: 0%;
	    padding: 0 29%;
	}
	.btnBox .formBtn {
		margin-bottom: 10px;
	}
	.btnBox .redrawing {
		padding: 0 15%
	}


	/*========  renew  ========*/
	.renew {
		padding: 35px 5.3% 0;
	}
	.renew h2 {
		margin-bottom: 15px;
		padding: 0 10%;
	}
	.renew .txtBox {
		line-height: 2.2;
	}
	.renew .rec {
		margin-top: 35px;
		padding: 35px 7% 30px;
	}
	.renew .rec h3 {
		margin-bottom: 20px;
	    padding: 0 14%;
	}
	.renew .rec ul {
		display: block;
	}
	.renew .rec ul li {
		flex: 0 0 0;
		margin-right: 0;
		display: flex;
	}
	.renew .rec ul li .couple {
		width: 30%;
		height: 100%;
	    margin-right: 3.5%;
	}
	.renew .rec ul li:first-child {
		margin-bottom: 15px;
	}
	.renew .rec ul li:last-child {
		margin-top: 15px;
		margin-right: 0;
	}
	.renew .rec ul li .txt {
	    margin-top: 5px;
	    flex: 0 0 69%;
	    text-align: left;
	}
	.renew .rec ul li .txt img {
		width: 60%;
	}
	.renew .rec ul li:nth-child(2) .txt img {
		width: 81%;
	}
	.renew .rec ul li:last-child .txt img {
		width: 52%;
	}
	.renew .rec ul li .txt p {
	    margin-top: 10px;
	    font-size: 10px;
	    line-height: 1.5;
	    text-align: left;
	}
	.renew ol {
		margin-top: 5px;
		margin-left: 0;
	    line-height: 1.6;
	}
	.renew ol li {
	    font-size: 10px;
	    margin-bottom: 5px;
        padding-left: 1.5rem;
        text-indent: -.8rem;
	}

	/*========  item  ========*/
	.item {
		margin-bottom: 40px;
		padding: 40px 5.3% 0;
		position: relative;
		z-index: 3;
	}
	.item h2 {
		margin-bottom: 15px;
		padding: 0 10%;
	}
	.item p {
		line-height: 1.6;
	}
	.item ul {
		width: 100%;
		margin: 20px auto 5px;
		display: flex;
	    flex-wrap: wrap;
	    justify-content: center;
	}
	.item ul li {
		margin-right: 1.5%;
	    margin-bottom: 15px;
	    flex: 0 0 31%;
	}
	.item ul li:last-child {
		margin-right: 0;
		margin-bottom: 0;
	}
	.item ul li:nth-last-child(2) {
		margin-bottom: 0;
	}
	.item ol {
		margin-top: 10px;
		margin-left: 0;
	    line-height: 1.6;
	}
	.item ol li {
	    font-size: 10px;
	    margin-bottom: 5px;
        padding-left: 1.5rem;
        text-indent: -.8rem;
	}
	.itemBnr {
	    padding: 0 7%;
	}

	/*========  venue  ========*/
	.wrap {
	    padding: 0 32%;
	}
	.wrap.gaiyou {
		margin-top: 43px;
	}
	.venue {
	}
	.venue .txtBox {
	    margin: 20px 0;
	    line-height: 2.0;
	    font-size: 12px;
	}

	.venue .slider {
		width: 89%;
		margin: 0 auto 30px;
	}
	.slider .slick-slider {
		margin-top: 1px;
	}
	.slider .slick-prev {
		width: 32px;
		height: 32px;
	    left: -21px;
	    z-index: 9999;
	}
	.slider .slick-next {
		width: 32px;
		height: 32px;
	    right: -21px;
	    z-index: 9999;
	}
	.slider .slick-prev:before {
		content: "";
		width: 9px;
	    height: 9px;
	    border-top: 1px solid #ecff19;
	    border-right: 1px solid #ecff19;
	    -webkit-transform: rotate(-135deg);
	    transform: rotate(-135deg);
	    position: absolute;
	    top: 11px;
	    right: 9px;
	}
	.slider .slick-next:before {
		content: "";
		width: 9px;
	    height: 9px;
	    border-top: 1px solid #ecff19;
	    border-right: 1px solid #ecff19;
	    -webkit-transform: rotate(45deg);
	    transform: rotate(45deg);
	    position: absolute;
	    top: 11px;
	    left: 9px;
	}

	/*========  aft  ========*/
	.aft {
		margin: 40px auto 20px;
	}
	.aft h2 {
		padding: 0 21%;
	}
	.aft .txtBox {
		margin-top: 15px;
		line-height: 2.0;
		font-size: 12px;
	}
	.aft .txtBox span {
		font-size: 10px;
	}

	/*========  flBox  ========*/
	.flBox {
	    display: flex;
	    flex-wrap: wrap;
	}
	.flBox li,
	.flBox li img {
	    width: 100%;
	}
	.flBox li {
		flex: 0 0 25%;
	}



/*========  voice  ========*/
	.voice {
		margin: 40px auto 40px;
	}
	.voice h2 {
		padding: 0 30%;
	}
	.voice .vBox {
		width: 100%;
	    margin: 16px auto 30px;
	}
	.voice .vBox li {
	    display: block;
	    font-size: 10px;
	    line-height: 1.5;
	    align-items: center;
		clear: both;
	    overflow: hidden;
    }
	.voice .vBox li img {
		width: 50%;
		float: left;
	}
	.voice .vBox li p {
		flex: 0 0 0;
	    padding: 10px 5%;
	    letter-spacing: -1px;
		width: 50%;
		float: left;
	}
	.voice .vBox li:nth-child(2) p {
	    padding: 23px 4%;
	}
	.voice .vBox li:last-child p {
	    padding: 17px 5%;
	}
	.vTitle {
		font-size: 12px;
		line-height: 15px;
		display: block;
		margin-bottom: -12px;
}

/*========  terms  ========*/
	.terms {
	}
	.terms h2 {
		padding: 0 30%;
	}
	.terms table {
		width: 89.5%;
	    margin: 15px auto 0;
	}
	.terms table th,
	.terms table td {
		padding: 12px 0 9px 0;
	    text-align: left;
	    line-height: 1.4;
	    font-size: 12px;
	}
	.terms table th {
		vertical-align: baseline;
		width: 6rem;
	}
/*
	.terms table tr:first-child td {
	    font-size: 14px;
	}
*/
	.terms table tr:last-child td li {
	    margin-bottom: 5px;
	    padding-left: 0.9rem;
	    text-indent: -0.3rem;
	}
	.terms table tr:last-child td li:last-child {
		margin-bottom: 3px;
	}
	.terms table td span {
	    font-size: 8px;
	    padding-right: 4px;
	    vertical-align: top;
	    padding-top: 2px;
	    display: inline-block;
	}
	.terms table th {
		width: 94px;
	}
	.terms table td ul li span.cmt {
		font-size: 10px;
	}
	.terms table tr:last-child td li:last-child {
	margin-top: -6px;
	}

	/*========  method  ========*/
	.method {
		margin: 43px auto;
	}
	.method h2 {
		margin-bottom: 16px;
		padding: 0 30%;
	}
	.method p {
		padding: 0 13.25%;
	}

	/*========  place  ========*/
	.wrap.gaiyou {
	    padding: 0 30%;
	}
	.place {
	}
	.place .map {
		margin: 16px auto 40px;
		display: flex;
		padding: 0 4.5%;
	}
	.place .map p {
		flex: 0 0 45.7%;
		height: 156px;
	}
	.place .map .access {
		margin-left: 4.2%;
		text-align: left;
		width: 100%;
		position: relative;
	}
	.place .map .access dt {
		font-size: 12px;
		line-height: 1.4;
		margin-bottom: 3px;
	    letter-spacing: 0.5px;
	}
	.place .map .access dt span {
		display: block;
		font-size: 14px;
	}
	.place .map .access dd {
		font-size: 10px;
		line-height: 1.4;
	}
	.place .map .access dd.mt {
		margin-bottom: 2px;
	}
	.place .map .access .linkBtn {
		margin-top: 23px;
		height: 32px;
		width: 100%;
		position: absolute;
		bottom: 0;
	}
	.place .map .access .linkBtn a {
		width: 100%;
		height: 32px;
		display: block;
		color: #fff;
	    padding: 10px 0 0 1.2rem;
	    position: relative;
		font-size: 11px;
	}
	.place .map .access .linkBtn a:after {
	    content: "";
	    width: 6px;
	    height: 6px;
	    border-top: 1px solid #ecff19;
	    border-right: 1px solid #ecff19;
	    -webkit-transform: rotate(45deg);
	    transform: rotate(45deg);
	    position: absolute;
	    top: 12px;
	    right: 1.0rem;
	}

	/*========  faq  ========*/
	.faq {
		padding: 45px 0 40px;
	}
	.faq h2 {
		padding: 0 33%;
	}
	.faq ul {
		width: 89.5%;
		margin: 16px auto 0;
		text-align: left;
	}
	.faq ul li {
		margin-bottom: 25px;
	}
	.faq ul li:last-child {
		margin-bottom: 0;
	}
	.faq ul li .que,
	.faq ul li .answer {
		padding: 6px 2.7% 6px 3.01%;
	    line-height: 1.55;
	}
		.faq ul li p span {
			font-size: 16px;
			padding-right: 6px;
		}

	.faq ul li .que  {
	    position: relative;
	    cursor: pointer;
	    padding: 6px 8.7% 6px 2rem;
	    text-indent: -1.5rem;
	}
	.faq ul li .que span.switch {
		position: absolute;
	    width: 14px;
	    height: 14px;
	    right: 10px;
	    top: 11px;
	}
	.faq ul li:nth-child(2) .que span.switch {
	/*    top: 32px;*/
	}
	.faq ul li .que span.switch:before,
	.faq ul li .que span.switch:after {
	    content: "";
	    display: block;
	    width: 14px;
	    height: 2px;
	    position: absolute;
	    top: 0;
	    bottom: 0;
	    right: 0;
	    left: 0;
	    margin: auto;
	    -webkit-transition: all .3s 0s ease;
	    transition: all .3s 0s ease;
	}
	.faq ul li .que span.switch:after {
	    -webkit-transform: rotate(90deg);
	    -ms-transform: rotate(90deg);
	    transform: rotate(90deg);
	}
	.faq ul li .que span.switch.open:after {
	    -webkit-transform: rotate(0deg);
	    -ms-transform: rotate(0deg);
	    transform: rotate(0deg);
	}

	.faq ul li .answer {
		font-size: 10px;
		vertical-align: middle;
		display: none;
	}
	.faq ul li .answer p {
	    text-indent: -1.5rem;
	    padding-left: 1.5rem;
        padding-right: 0.5rem;
	    letter-spacing: 0.5px;
	}
	.faq ul li .answer p span {
		vertical-align: baseline;
	}

	/*========  footer  ========*/
	footer {
		background: #ececec;
	}
	footer ul {
		display: flex;
	    align-items: center;
		padding: 25px 0 20px;
		font-size: 10px;
		flex-wrap: wrap;
		justify-content: center;
	}
	footer ul li:first-child {
		/*margin-right: auto;*/
		/*flex: 0 0 100%;*/
		/*padding: 0 38%;
		margin-bottom: 20px;
		flex-grow: 0;
		flex-shrink: 1;
		flex-basis: 100%;*/
	}
	footer ul li.sec {
	    padding-right: 2rem;
	    padding-left: 2rem;
		position: relative;
		padding-top: 2px;
	}
	footer ul li.sec:after {
		content: "";
	    width: 1px;
	    height: 10px;
	    position: absolute;
	    background: #333;
	    top: 1px;
	    right: 16px;
	    opacity: 0.5;
		padding-top: 2px;
	}
	footer ul li.third {
		padding-right: 2rem;
		padding-top: 3px;
	}
	footer ul li:last-child {
		font-size: 8px;
		padding-top: 10px;
	}
	footer a:hover,
	footer a:hover img {
		opacity: 1.0;
	}
  /*追加=======================

  form

  ===========================*/
  .deco img{
    width:20%;
  }
  .form_outline h2{
    padding:30px 0 20px;
  }
  .form_outline h2 img{
    width:50%;
  }
  .back_w{
    padding: 8% 0 3%;
  }
  .infoText{
    padding:5% 0;
  }
  .textsec h4, .textsec02 h4{
    padding-bottom: 4%;
    font-size: 1.2em;
  }
  .textsec ul{
    line-height: 1.6em;
    font-size:1.0em;
  }
  .textsec02{
    line-height: 1.6em;
  }
  .textsec02 p{
    font-size:1.0em;
  }
  /*formarea*/
  .formArea{
    width:95%;
    margin:0 auto;
  }
  form{
    margin:3% 0;
  }
  .formAuter {
      display: block;
      width: 100%;
      margin:5% auto;
      padding:10px;
  }
  .formAuter dl{
    display: block;
    border-bottom: 3px dotted #bce0c5;
  }
  .formAuter dl dt{
    display: block;
    width: 100%;
    padding: 4% 0 2% 0;
    border:none;
    text-align: left;
    font-size:1.2em;
  }
  .formAuter dl dt.required:after{
    margin-left: 5px;
  }
  .formAuter dl dd{
    display: block;
    padding: 0 0 0 0;
    font-size: 1.0em;
    border-bottom:none;
    width:100%;
    margin-bottom:3%;
    text-align: left;
  }
  .formAuter dl dd ul.nameWrap{
    float: none;
    width:100%;
    margin-bottom: 3%;
  }
  .formArea dl dd ul li.nametxt{
      width: 90%;
      margin: 10px 5px 5px 5px;
      float: none;
      position: relative;
      text-align: left;
  }
  /*.formArea dl dd ul li.nameform {
      float: none;
  }*/
  .formArea dl dd ul li.notes{
    font-size:10px;
  }
  .formArea dl dd ul li.form_mail{
      width:90vw;
  }
  input[type="text"],input[type="email"], input[type="tel"] {
    width:100%;
    height: 11vw;
  }
  input[type="text"].short{
    width:35%;
  }
  textarea{
    width:100%;
  }
  span.txt{
    font-size:14px;
  }
  .btnArea .btn {
    width: 90%;
    margin:0 auto;
  }
  .btnArea .btn button {
      font-size: 1.1em;
      width: 100%;
    }
    /*confirm*/
  .con_wrap{
    background: url(/assets/images/bg.gif) repeat left top;
    text-align: center;
    position: relative;
    overflow: hidden;
    font-size:14px;
  }
  .combtn{
    display: block;
  }
  .reBtn button{
    background:#808080 !important;
  }
}

@media screen and (max-width: 320px) {
	.place .map .access .linkBtn a {
		padding-left: 6px;
	}
	.place .map .access .linkBtn a:after {
		right: 1em;
	}	
}

.voice__content {
	width: 100%;
	margin: 32px 0 65px;
	padding: 0 80px;
}
.voice__content-inner {
	display: flex;
}
.voice__content-inner--pic{
	width: 50%;
}
.voice__content-inner--text {
	width: 50%;
	padding: 0 40px;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: left;
}
.voice__content-inner--text p {
	line-height: 28px;
	font-size: 16px;
}
.voice__content img {
	width: 100%;
}
@media (max-width: 767px) {
	.voice {
		margin-top: 10.6667%;
		padding: 0;
	}
	.voice__content {
		width: 100%;
		padding: 0;
	}
	.voice__content-inner {
	}
	.voice__content-inner--pic {
		width: 50%;
	}
	.voice__content-inner--text {
		width: 50%;
		padding: 0 4.26667%;
	}
	.voice__content-inner--text p {
		font-size: 2.60756vw;
		line-height: 3.911342vw;
		letter-spacing: 0.025em;
	}
	.voice__content img {
		width: 100%;
	}
	.vTitle {
		font-size: 3.2vw;
		line-height: 4vw;
		display: block;
		margin-bottom: -3.2vw;
	}
}


.inner2 {
/*    width: max-content;*/
}

.footer2 {
  padding: 16px 0;
  width: stretch;
}

.footer2 .inner2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0;
}

.footer2 .sec2::after,
.footer2 .sec3::after {
  content: "";
  display: inline-block;
  width: 1px;
  height: 1em;
  background-color: #333;
  margin: 0 12px;
  vertical-align: middle;
}

.footer2 .inner2 a {
  text-decoration: none;
  color: inherit;
}

.footer2 .copyright_ex {
  width: 100%;
  text-align: center;
  margin-top: 8px;
}

@media screen and (max-width: 768px) {
  .footer2 .inner2 {
    flex-direction: row;
  }

  .footer2 .sec2,
  .footer2 .sec3 {
    display: flex;
    align-items: center;
  }

  .footer2 .sec3::after {
    display: none;
  }

  .footer2 .sec4 {
    width: 100%;
    text-align: center;
    margin-top: 10px;
  }

  .footer2 .copyright_ex {
    /* margin-top: 8px; */
  }
}