@charset "utf-8";

/* splash
------------------------------------------------------------*/

#splash {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background:#fff;
	text-align:center;
	color:#fff;
}
#splash_logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#splash_logo img {
	width: 280px;
}
.fadeUp{
	animation-name: fadeUpAnime;
	animation-duration: 1.6s;
	animation-fill-mode:forwards;
	opacity: 0;
}
@keyframes fadeUpAnime{
  0% {
	opacity: 0;
  }
  40% {
	opacity: 0;
  }
  100% {
	opacity: 1;
	transform: translateY(0);
  }
}

.text-images {
	position: absolute;
	top: 28%;
	left: 4%;
	width: 90%;
	height: 60vh;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 44px;
	color: #fff;
	letter-spacing: 0.06em;
	line-height: 2.4em;
	text-shadow: 0px 2px 8px rgba(0,0,0,0.6);
	text-align: left;
	z-index: 88;
	animation: fadein 1.8s ease-out;
	letter-spacing: 0.03em;
}
.text-images img {
	width: 100%;
	max-width: 500px;
}
.text-images br {
	display: none;
}
.mainimg {
	position: relative;
	width: 100%;
	height: 100vh;
}
.mainimg .inviconlist {
	position: absolute;
	width: 90%;
	left: 5%;
	bottom: 0;
	right: 0;
	z-index: 8;
	overflow: hidden;
	animation: fadein 3.4s ease-out;
}
.mainimg .inviconlist ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
}
.mainimg .inviconlist li {
	float: left;
	width: 20%;
	text-align: center;
}
.mainimg .inviconlist li img {
	display: block;
	width: 100%;
}


/* Topics
---------------------------------------------------- */

#topics {
	width: 100%;
	padding: 40px 0 30px;
	background: #36261d;
}
#topics .subtitle {
	width: 90%;
	margin: 0 auto 30px;
}
#topics .subtitle h1 {
	font-size: 2.0em;
	color: #fff;
	font-weight: 500;
	line-height: 1.2em;
	letter-spacing: 0.3em;
	text-align: left;
}
.swiper {
	width: 100%;
	height:  250px;
}
.swiper-slide {
	width: 600px !important;
}
.swiper-slide img {
	display: block;
	width: 100%;
	height: auto;
}
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom, .swiper-pagination-fraction {
	bottom: 10px !important;
}
.swiper-pagination-bullet {
	width: 10px !important;
	height: 10px !important;
	margin: 0 8px !important;
	background-color: #fff !important;
	opacity: 1.0 !important;
}
.swiper-pagination-bullet-active {
	background-color: #e36f24 !important;
}

/* ixcont01
---------------------------------------------------- */

#ixcont01 {
	position: relative;
	overflow: hidden;
	padding: 80px 0 180px;
}
#ixcont01 .inbox {
	position: relative;
	text-align: left;
}
#ixcont01 .inbox .bgimg {
	margin-left: -3%;
}
#ixcont01 .inbox .bgimg img {
	width: 80%;
	max-width: 1000px;
	height: auto;
}
#ixcont01 .contents_inner,
#ixcont03 .contents_inner {
	position: absolute;
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
	top: 20px;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	margin: auto;
	max-width: 1220px;
}
#ixcont01 .contents_inner .cbox,
#ixcont02 .contents_inner .cbox,
#ixcont03 .contents_inner .cbox {
	width: 680px;
	text-align: left;
	background: url(../n_img/white.png) repeat;
	padding: 60px 50px 50px;
}
#ixcont01 .contents_inner .cbox h2,
#ixcont02 .contents_inner .cbox h2,
#ixcont03 .contents_inner .cbox h2 {
	margin: 0 0 40px -20px;
	font-weight: 700;
	font-size: 2.6em;
	line-height: 1.3em;
	letter-spacing: 0.2em;
}
#ixcont01 .contents_inner .cbox h2 span,
#ixcont02 .contents_inner .cbox h2 span,
#ixcont03 .contents_inner .cbox h2 span {
	margin-left: 28px;
	font-size: 0.8em;
	font-weight: 700;
}
#ixcont01 .contents_inner .cbox h4,
#ixcont02 .contents_inner .cbox h4,
#ixcont03 .contents_inner .cbox h4 {
	padding: 0 0 8px;
	font-size: 1.5em;
	color: #e36f24;
	font-weight: 500;
	line-height: 1.0em;
	border-bottom: dotted 1px #111;
}
.circle_number {
	display: inline-block;
	width: 40px;
	height: 40px;
	margin-right: 8px;
	padding-top: 8px;
	background-color: #e36f24;
	border-radius: 50%;
	font-size: 18pt;
	color: #fff;
	text-align: center;
	box-sizing: border-box;
}
#ixcont01 .contents_inner .cbox .textbox,
#ixcont02 .contents_inner .cbox .textbox,
#ixcont03 .contents_inner .cbox .textbox {
	margin: 20px 15px 40px;
	font-size: 1.1em;
}


/* ixcont02
---------------------------------------------------- */

#ixcont02 {
	position: relative;
	overflow: hidden;
	padding: 0 0 80px;
}
#ixcont02 .inbox {
	position: relative;
	text-align: right;
}
#ixcont02 .inbox .bgimg {
	margin-right: -3%;
}
#ixcont02 .inbox .bgimg img {
	width: 80%;
	max-width: 1000px;
	height: auto;
}
#ixcont02 .contents_inner {
	position: absolute;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	top: 20px;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	margin: auto;
	max-width: 1220px;
}
#ixcont02 .inbox img.bgimg {
	margin-right: -20%;
}


/* ixcont03
---------------------------------------------------- */

#ixcont03 {
	position: relative;
	overflow: hidden;
	padding: 80px 0 140px;
}
#ixcont03 .inbox {
	position: relative;
	text-align: left;
}
#ixcont03 .inbox .bgimg {
	margin-left: -3%;
}
#ixcont03 .inbox .bgimg img {
	width: 60%;
	max-width: 1000px;
	height: auto;
}



/* ixcont04
---------------------------------------------------- */


#ixcont04 {
	position: relative;
	padding: 0 0 80px;
}
#ixcont04 .inbox {
	position: relative;
	width: 94%;
	max-width: 1460px;
	margin: 0 auto;
}
.content_area {
	width: 100%;
	max-width: 1240px;
	margin: 0 auto;
	padding: 30px 20px;
}
.tab-container {
	display: flex;
	flex-wrap: wrap;
}
.tab-container {
	margin: 0 0 15px;
}
.tab {
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 500;
	text-align: center;
	width: calc(100% / 6);
	padding: 10px;
	background-color: #eee;
	border: solid 1px #666;
	cursor: pointer;
}
.tab+.tab {
	border-left: none;
}
.tab:hover {
	background-color: #fff;
}
.tab.active {
	background-color: #fff;
	border-bottom: none;
}

.content {
	display: none;
	padding: 40px 20px;
	animation: fadeIn 0.3s ease-in-out;
}
.content.show {
	display: block;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.contarea {
	margin: 0 0 50px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.contarea .textarea {
	width: 50%;
}
.contarea .textarea h1 {
	padding: 2px 0 20px;
	font-size: 1.4em;
	color: #e36f24;
	font-weight: 500;
	line-height: 1.0em;
}
.contarea .thumbnail {
	width: 46%;
}
.contarea .thumbnail img {
	width: 100%;
	height: auto;
}
.casebox {
	width: 100%;
}
.casebox h1 {
	position: relative;
	margin: 0 0 30px;
	font-weight: 700;
	font-size: 1.3em;
	letter-spacing: 0.2em;
}
.casebox h1 span {
	position: relative;
	padding: 5px 20px 5px 0;
	background: #fff;
	z-index:3;
}
.casebox h1:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 100%;
	height: 1px;
	background: #999;
	z-index:1;
}
.casebox h1:after {
	right: 0;
}
.casebox ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}
.casebox ul li {
	position: relative;
	width: 22.75%;
	margin: 0 0 2% 3%;
	line-height: 1.0em;
	text-align: left;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	box-sizing: border-box;
		-moz-border-radius: 6px;
		-webkit-border-radius: 6px;
	border-radius: 6px;
	border: solid 1px #888;
}
.casebox ul li:first-child,
.casebox ul li:nth-of-type(4n+1) {
	margin: 0 0 2%;
}
.casebox ul li div {
	min-height: 40px;
	padding: 6px 14px;
	font-size: 0.9em;
	color: #666;
	font-weight: 500;
	line-height: 1.5em;
}
.content .btnbox {
	width: 50%;
	height: 80px;
	margin: 30px auto 30px;
	text-align: center;
}


/* ixcont05
---------------------------------------------------- */

#ixcont05 {
	position: relative;
	padding: 100px 0;
	background: #fef4e5;
}
#ixcont05 .inbox {
	position: relative;
}
#ixcont05 .inbox .subtt {
	margin: 0 0 80px;
}
#ixcont05 .faqbox {
	width: 90%;
	margin: 0 auto;
}
.faqbox dl {
	width: 100%;
	margin: 0 0 40px;
	line-height: 1.8em;
}
.faqbox dt {
	display: block;
	margin: 0 0 20px 10px;
	padding: 6px 0 24px 56px;
	font-size: 1.6em;
	color: #111;
	background: url(../n_img/q.jpg) no-repeat 0 0;
	border-bottom: dotted 1px #333;
}
.faqbox dd {
	display: block;
	margin: 0 0 0 10px;
	padding: 8px 0 30px 70px;
	font-size: 1.1em;
	color: #333;
	background: url(../n_img/a.jpg) no-repeat 10px 0;
}
#ixcont05 .inbox .btnbox {
	width: 50%;
	height: 80px;
	margin: 0px auto 30px;
	text-align: center;
}




/* ixcont06
---------------------------------------------------- */

#ixcont06 {
	position: relative;
	overflow: hidden;
	padding: 80px 0 180px;
}
#ixcont06 .inbox {
	position: relative;
	text-align: left;
}
#ixcont06 .inbox .bgimg {
	margin-left: -3%;
}
#ixcont06 .inbox .bgimg img {
	width: 80%;
	max-width: 1000px;
	height: auto;
}
#ixcont06 .contents_inner{
	position: absolute;
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
	top: 20px;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	margin: auto;
	max-width: 1220px;
}
#ixcont06 .contents_inner .cbox {
	width: 680px;
	text-align: left;
	background: url(../n_img/white.png) repeat;
	padding: 60px 50px 50px;
}
#ixcont06 .contents_inner .cbox h4 {
	padding: 0 0 18px;
	font-size: 1.7em;
	font-weight: 500;
	line-height: 1.0em;
}
#ixcont06 .contents_inner .cbox .textbox {
	margin: 20px 0 40px;
	font-size: 1.1em;
}


/* ixcont07
---------------------------------------------------- */

#ixcont07 {
	position: relative;
	overflow: hidden;
	padding: 0 0 120px;
}
#ixcont07 .inbox {
	position: relative;
	text-align: right;
}
#ixcont07 .contents_inner {
	position: absolute;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	top: 20px;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	margin: auto;
	max-width: 1220px;
}
#ixcont07 .inbox {
	position: relative;
	text-align: right;
}
#ixcont07 .inbox .bgimg {
	margin-right: -3%;
}
#ixcont07 .inbox .bgimg img {
	width: 80%;
	max-width: 1000px;
	height: auto;
}
#ixcont07 .contents_inner .cbox {
	width: 680px;
	text-align: left;
	background: url(../n_img/white.png) repeat;
	padding: 60px 50px 50px;
}
#ixcont07 .contents_inner .cbox h4 {
	padding: 0 0 18px;
	font-size: 1.7em;
	font-weight: 500;
	line-height: 1.0em;
}
#ixcont07 .contents_inner .cbox .textbox {
	margin: 20px 15px 40px;
	font-size: 1.1em;
}
#ixcont07 .contents_inner .cbox .btnbox {
	width: 80%;
	height: 80px;
	margin: 0 20% 0 0;
	padding: 20px 0 0;
	text-align: center;
}


/* ixcont08
---------------------------------------------------- */

#ixcont08 {
	position: relative;
	overflow: hidden;
	padding: 0 0 20px;
	background: #f5f0ef;
}
#ixcont08 .inbox {
	position: relative;
	padding: 60px 0;
}
.voicebox {
	width: 90%;
	margin: 0 auto 20px;
	padding: 80px 0 60px;
}
.voicebox+.voicebox {
	border-top: solid 1px #ccc;
}
.voicebox .grid01 {
	width: 32%;
	margin: 0 6% 0 0;
	text-align: center;
}
.voicebox .grid03 {
	float: right;
	margin: 0 0 0 6%;
}
.voicebox .grid01 img {
	width: 100%;
	height: auto;
}
.voicebox .bgimg img {
	width: 80%;
	max-width: 1000px;
	height: auto;
}
.voicebox .grid02 {
	width: 62%;
	margin: 0;
}
.voicebox .grid04 {
	float: left;
}
.voicebox .grid02 h2 {
	padding: 0 0 18px;
	font-size: 1.7em;
	font-weight: 500;
	line-height: 1.0em;
}
.voicebox .grid02 .addbox {
	margin: 0 0 50px;
	font-size: 1.1em;
}
.voicebox .grid02 h3 {
	margin: 0 0 20px;
	padding: 12px 10px;
	font-size: 1.4em;
	font-weight: 500;
	line-height: 1.3em;
	background: #e6d9d9;
}
.voicebox .grid02 .textbox {
	font-size: 1.2em;
	font-weight: 500;
	line-height: 1.8em;
}


/* formbox
---------------------------------------------------- */

.formbox {
	position: relative;
	padding: 40px;
}
.formbox .cttxt2 {
	margin: 0 0 50px;
	padding: 0 0 10px;
	font-size: 16px;
	line-height: 1.8em;
	text-align: left;
	border-bottom: dotted 1px #888;
}
.formbox table {
	width: 100%;
	margin: 0;
	font-size: 16px;
	font-size: 1.6rem;
}
.formbox table th  {
	width: 25%;
	padding: 15px 0;
	font-size: 15px;
	color: #111;
	line-height: 1.5em;
	text-align: left;
	vertical-align: middle;
}
.contcheck .formbox table th,
.contcheck .formbox table td {
	padding: 20px 0;
	border-bottom: solid 1px #888;
}
.formbox table td {
	width: 73%;
	padding: 15px 10px;
	font-size: 15px;
	color: #111;
	line-height: 1.5em;
	text-align: left;
	vertical-align: middle;
}
.formbox table td.agmsg {
	padding: 0px 10px 15px;
}

.formbox table td.agmsg a {
	color: #84721b;
	text-decoration: underline;
}
.formbox table td.agmsg a:hover {
	color: #111;
	text-decoration: none;
}

.formbox table select {
	padding: 6px 5px;
	border: solid 1px #fff;
	background: #fff;
}
.formbox table label {
	display: inline-block;
	padding: 5px 20px 5px 0 ;
}
.formbox table label input {
	width: auto;
	padding: 6px 30px 6px 5px;
	border: solid 1px #fff;
}
.formbox table label span {
	padding-right: 4px;
}
.formbox table td span {
	width: 30px;
	padding-right: 4px;
}
span.hss {
	margin: 0 8px 0 0;
	padding: 1px 6px 3px 8px;
	font-size: 11px;
	color: #fff;
	text-align: center;
	letter-spacing: 0.2em;
	background: #84721b;
	border: solid 1px #84721b;
		-moz-border-radius: 16px;
		-webkit-border-radius: 16px;
	border-radius: 16px;
}
.formbtnbox {
	width: 50%;
	margin: 40px auto 30px;
	line-height: 1.5em;
	text-align: center;
}
.formbtnbox div {
	margin: 10px 0;
}
.formbtnbox .bsubmit {
	position: relative;
	cursor: pointer;
	display: block;
	width: 100%;
	height: 80px;
	font-size: 16px;
	color: #fff;
	letter-spacing: 0.04em;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-weight: 700;
	text-align: center;
	background: #84721b url(../img/btn_arrow.png) no-repeat right 20px center;
	border: 1px solid #000;
	transition: all .2s;
		-moz-border-radius: 6px;
		-webkit-border-radius: 6px;
	border-radius: 6px;
}
.formbtnbox .bsubmit:hover {
	position: relative;
	color: #fff;
	background-color: #111;
	border: 1px solid #111;
}
.formbtnbox .bsubmit:disabled {
	color: #ddd;
	background: #ccc url(../img/btn_arrow_dis.png) no-repeat right 20px center;
	border: 1px solid #ccc;
	cursor: default;
}


.backbtnbox {
	width: 50%;
	margin: 0 auto;
	padding: 30px 0;
}
.formbtnbox div.backbtnbox,
.backbtnbox {
	width: 50%;
	margin: 0 auto;
	padding: 20px 0;
}
.backbtnbox .bbutton {
	display: block;
	width: 100%;
	font-size: 12px;
	font-size: 1.2rem;
	color: #fff;
	padding: 10px 30px;
	background: #999;
	border: 1px solid #999;
		-moz-border-radius: 36px;
		-webkit-border-radius: 36px;
	border-radius: 36px;
	cursor: pointer;
	transition: all .3s;
}
.backbtnbox .bbutton:hover {
	background: #666;
	border: 1px solid #666;
}
.backbtnbox .submbtn {
	display: block;
	width: 100%;
	color: #fff;
	padding: 16px 0;
	background: #3d3d3d;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
	border-radius: 4px;
	border: 1px solid #3d3d3d;
	cursor: pointer;
}
.submbtn {
	display: block;
	width: 200px;
	color: #111;
	padding: 16px 0;
	background: #eee;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
	border-radius: 4px;
	border: 1px solid #ddd;
	cursor: pointer;
}
.submbtn:hover {
	color: #fff;
	background: #999;
}

.contactmsg {
	font-size: 14px;
	font-size: 1.4rem;
	text-align: left;
	margin: 30px auto 66px;
	line-height: 1.6;
}

.errbox {
	position: relative;
	width: 80%;
	margin: 50px 10%;
	padding: 50px 80px;
	outline: 3px solid #ccc;
	outline-offset: -1.5rem;
	border-box: box-sizing;
}
.errbox div {
	color: #333;
	line-height: 1.6;
}
.formhead {
	color: #333;
	line-height: 1.6;
	text-align: center;
}


.thanksbox {
	position: relative;
	width: 80%;
	margin: 50px 10%;
	padding: 50px 80px;
	outline: 3px solid #ccc;
	outline-offset: -1.5rem;
	border-box: box-sizing;
}
.thanksbox::before {
	position: absolute;
	top: 0rem;
	left: 50%;
	transform: translateX(-50%);
	padding: 0.5rem 1rem;
	background: #F2F3F5;
	color: #333;
	font-size: 22px;
	font-size: 2.2rem;
	letter-spacing: 0.2em;
	content: attr(data-title);
}
.thanksbox div {
	color: #333;
	line-height: 1.6;
	text-align: center;
}


.backlink {
	padding: 10px 0;
	text-align: center;
}
.formbox input[type="text"],
.formbox input[type="email"],
.formbox input[type="number"] {
	padding: 12px 8px !important;
	border: none;
	border-radius: 0;
	outline: none;
	background: #eee;
	border: solid 1px #eee !important;
}
.formbox table textarea {
	width: 100%;
	margin: 0 auto;
	padding: 12px 8px !important;
	background: #eee;
	border: solid 1px #eee !important;
	border-radius: 2px;
}
.imeon {
	ime-mode: active;
}
.imeoff {
	ime-mode: disabled;
}

.ipt01 {
	width: 60%;
	padding: 5px;
	border: 1px solid #ccc;
}
.ipt02 {
	width: 100%;
	padding: 5px;
	border: 1px solid #ccc;
}
.ipt03 {
	width: 30%;
	padding: 5px;
	border: 1px solid #ccc;
}
.ipt04 {
	width: 10%;
	padding: 5px;
	border: 1px solid #ccc;
}
.ipt05 {
	width:400px;
	padding:5px;
	border:1px solid #ccc;
}
.sel01 {
	padding:5px;
}



.privacy-policy-sub {
	margin: 30px auto 6px;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-size: 1.2em;
	font-weight: 700;
	line-height: 1.6;
	text-align: center;
}
.privacy-policy {
	height: 240px;
	padding: 2em;
	overflow-y: scroll;
	border: solid 1px #999;
}
.pp_inbox {
	text-align: left;
}
.pp_inbox:first-child {
	margin-top: 0px;
	line-height: 1.2em;
}
.pphead {
	font-size: 0.9em;
	font-weight: 700;
}
.ppdetail {
	padding: 2px 0 8px;
	font-size: 0.84em;
}

#ixareabox {
	width: 100%;
	margin: 0 auto;
	padding: 50px 0 40px;
	background: #fff;
}
#ixareabox h1 {
	width: 90%;
	margin: 0 auto 30px;
	font-size: 1.5em;
	font-weight: 500;
	line-height: 1.0em;
}

#ixareabox .areatxt {
	width: 90%;
	margin: 0 auto;
}

.areatxt dt {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-size: 1.3em;
	color: #111;
}
.areatxt dt::after {
	content: '';
	flex-grow: 1;
	height: 1px;
	background: #999;
}
.areatxt dd {
	padding: 12px 6px 30px;
}
.areatxt a {
	position: relative;
	display: inline-block;
	margin: 0 .1em .2em 0;
	padding: .2em .5em .4em;
	line-height: 1;
	font-size: 0.96em;
	color: #666;
	text-decoration: none;
	background-color: #fff;
	border: 1px solid #999;
	border-radius: 2em;
	transition: all 0.2s;
}
.areatxt a:hover {
	color: #fff;
	background-color: #666;
}
#ixareabox .textbox {
	width: 88%;
	margin: 0 auto;
	padding: .1em 0 0;
	font-size: 0.92em;
	color: #111;
	line-height: 1.4em;
}


/* ------------------------------------------------------------------------------------------------------------------------ */

@media only screen and (max-width: 1100px){


.text-images {
}
.text-images img {
}


/* ixcont01
---------------------------------------------------- */

#ixcont01 {
}
#ixcont01 .inbox .bgimg {
	margin: 0;
}
#ixcont01 .inbox .bgimg img {
	width: 90%;
	max-width: auto;
	height: auto;
}
#ixcont01 .contents_inner {
	padding: 200px 0 0;
}
#ixcont01 .contents_inner .cbox {
	width: 600px;
	margin-left: 20px;
	padding: 60px 50px 50px;
	background: url(../n_img/white.png) repeat;
	text-align: left;
}


/* ixcont02
---------------------------------------------------- */

#ixcont02 {
	padding: 0 0 50px;
}
#ixcont02 .inbox .bgimg {
	margin: 0;
}
#ixcont02 .inbox .bgimg img {
	width: 80%;
	max-width: auto;
	height: auto;
}

/* ixcont03
---------------------------------------------------- */

#ixcont03 .contents_inner .cbox {
	width: 680px;
	margin-right: 20px;
	padding: 60px 50px 50px;
	background: url(../n_img/white.png) repeat;
}
#ixcont03 .inbox .bgimg {
	margin: 0;
}
#ixcont03 .inbox .bgimg img {
	width: 70%;
	max-width: auto;
	height: auto;
}



/* ixcont04
---------------------------------------------------- */

#ixcont04 .ixinvbox ul li {
	position: relative;
	float: left;
	width: 48%;
	margin: 0 0 30px;
}


/* ixcont08
---------------------------------------------------- */

.voicebox {
	width: 94%;
	margin: 0 auto 20px;
	padding: 80px 0 60px;
}
.voicebox+.voicebox {
	border-top: solid 1px #ccc;
}
.voicebox .grid01 {
	width: 36%;
	margin: 0 2% 0 0;
	text-align: center;
}
.voicebox .grid03 {
	float: right;
	margin: 0 0 0 2%;
}
.voicebox .grid01 img {
	width: 100%;
	height: auto;
}
.voicebox .bgimg img {
	width: 100%;
	max-width: 1000px;
	height: auto;
}
.voicebox .grid02 {
	width: 62%;
	margin: 0;
}
.voicebox .grid04 {
	float: left;
}



}

/* ------------------------------------------------------------------------------------------------------------------------ */

@media only screen and (max-width: 768px){



.text-images {
	position: absolute;
	top: 28%;
	left: 4%;
	width: 90%;
	height: 60vh;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 40px;
	color: #fff;
	letter-spacing: 0.1em;
	line-height: 1.6em;
	text-shadow: 0px 2px 8px rgba(0,0,0,0.6);
	text-align: left;
	z-index: 88;
	animation: fadein 1.8s ease-out;
	letter-spacing: 0.03em;
}
.text-images br {
	display: block;
}

/* ixcont01
---------------------------------------------------- */

#ixcont01 {
	position: relative;
	overflow: hidden;
	padding: 0 0 80px;
}
#ixcont01 .inbox,
#ixcont02 .inbox,
#ixcont03 .inbox {
	position: relative;
	text-align: center;
}
#ixcont01 .inbox .bgimg,
#ixcont02 .inbox .bgimg,
#ixcont03 .inbox .bgimg {
	position: absolute;
	margin-left: 0;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
#ixcont01 .inbox .bgimg img,
#ixcont02 .inbox .bgimg img,
#ixcont03 .inbox .bgimg img {
	width: 100%;
	margin: auto;
}
#ixcont01 .contents_inner,
#ixcont02 .contents_inner {
	position: relative;
	display: block;
	width: 100%;
	margin: auto;
	padding: 160px 0 0;
}
#ixcont01 .contents_inner .cbox,
#ixcont02 .contents_inner .cbox,
#ixcont03 .contents_inner .cbox {
	width: 94%;
	margin: 0 auto;
	text-align: left;
	background: url(../n_img/white.png) repeat;
	padding: 40px 20px;
	border: solid 1px #ccc;
}
#ixcont01 .contents_inner .cbox h2,
#ixcont02 .contents_inner .cbox h2,
#ixcont03 .contents_inner .cbox h2 {
	margin-bottom: 25px;
	font-family: "Zen Old Mincho", serif;
	font-weight: 600;
	font-size: 1.714em;
	line-height: 1.3em;
}
#ixcont01 .contents_inner .cbox .textbox {
	margin-bottom: 25px;
	font-size: 1.1em;
}
#ixcont01 .contents_inner .cbox .btnbox {
	text-align: left;
}
#ixcont01 .contents_inner .cbox .btnbox a {
	position: relative;
	display: inline-block;
	margin: 0;
	padding: 12px 62px 12px 2px;
	font-size: 1.1em;
	color: #000;
	font-weight: 500;
	text-decoration: none;
	border-bottom: solid 2px #111;
}
#ixcont01 .contents_inner .cbox .btnbox a::after{
	content: '';
	position: absolute;
	top:46%;
	right: 13px;
	width: 5px;
	height: 5px;
	border-top: 2px solid #111;
	border-right: 2px solid #111;
	transform: rotate(45deg);
	transition: all .3s;
	}
#ixcont01 .contents_inner .cbox .btnbox a:hover::after{
	right: 8px;
}



/* ixcont02
---------------------------------------------------- */


#ixcont02 {
}
#ixcont02 .inbox {
	position: relative;
	width: 100%;
	max-width: 1460px;
	margin: 0 auto;
}
#ixcont02  .flexbox {
	display: block;
	margin-bottom: 40px;
}
#ixcont02  .flexbox li {
	width: 90%;
	margin: 0 auto 40px;
}
#ixcont02  .flexbox li img {
	width: 100%;
	height: auto;
}
#ixcont02  .flexbox li h4 {
	padding: 10px 0;
	font-size: 14pt;
	font-weight: 600;
}
#ixcont02  .flexbox li p {
	padding: 0 0 20px;
	font-size: 1.0em;
	line-height: 1.5em;
}


/* ixcont03
---------------------------------------------------- */

#ixcont03 {
	position: relative;
	overflow: hidden;
	margin: 0 auto 100px;
	padding: 0px 0 80px;
}
#ixcont03 .contents_inner {
	position: relative;
	display: block;
	width: 100%;
	margin: auto;
	padding: 80px 0 0;
}
#ixcont03 .contents_inner .cbox {
	width: 90%;
	margin: 0 auto;
	text-align: left;
	background: url(../n_img/white.png) repeat;
	padding: 50px;
}


/* ixcont04
---------------------------------------------------- */

#ixcont04 {
}
.tab-container {
	border-bottom: solid 1px #666;
}
.tab {
	font-weight: 500;
	text-align:center;
	width: calc(100% / 3);
	padding: 10px;
	background-color: #eee;
	border: solid 1px #666;
	cursor: pointer;
}
.tab+.tab,
.tab:nth-child(1) {
	border-bottom: none;
}
.tab:nth-child(4) {
	border-left: solid 1px #666;
}

.contarea {
	margin: 0 0 50px;
	display: block;
}
.contarea .textarea {
	width: 100%;
	margin: 0 auto 30px;
}
.contarea .textarea h1 {
	padding: 2px 0 20px;
	font-size: 1.4em;
	color: #e36f24;
	font-weight: 500;
	line-height: 1.0em;
}
.contarea .thumbnail {
	width: 100%;
	margin: 0 auto;
}
.casebox ul li {
	position: relative;
	width: 31%;
	margin: 0 0 2% 3.5%;
	line-height: 1.0em;
	text-align: left;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	box-sizing: border-box;
		-moz-border-radius: 6px;
		-webkit-border-radius: 6px;
	border-radius: 6px;
	border: solid 1px #888;
}
.casebox ul li:nth-of-type(4n+1) {
	margin: 0 0 2% 3.5%;
}
.casebox ul li:first-child,
.casebox ul li:nth-of-type(3n+1) {
	margin: 0 0 2%;
}
.content .btnbox {
	width: 80%;
	height: 80px;
	margin: 30px auto 30px;
	text-align: center;
}



/* ixcont05
---------------------------------------------------- */

#ixcont05 .inbox .btnbox {
	width: 70%;
}




/* ixcont06
---------------------------------------------------- */

#ixcont06 {
	position: relative;
	overflow: hidden;
	padding: 0 0 80px;
}
#ixcont06 .inbox {
	position: relative;
	text-align: center;
}
#ixcont06 .inbox .bgimg {
	position: absolute;
	margin-left: 0;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
#ixcont06 .inbox .bgimg img {
	width: 100%;
	margin: auto;
}
#ixcont06 .contents_inner {
	position: relative;
	display: block;
	width: 100%;
	margin: auto;
	padding: 150px 0 0;
}
#ixcont06 .contents_inner .cbox {
	width: 94%;
	margin: 0 auto;
	text-align: left;
	background: url(../n_img/white.png) repeat;
	padding: 40px 20px;
	border: solid 1px #ccc;
}

#ixcont06 .contents_inner .cbox h4 {
	line-height: 1.4em;
}
#ixcont06 .contents_inner .cbox .textbox {
	margin-bottom: 25px;
	font-size: 1.1em;
}

/* ixcont07
---------------------------------------------------- */

#ixcont07 {
	position: relative;
	overflow: hidden;
	padding: 0 0 80px;
}
#ixcont07 .inbox {
	position: relative;
	text-align: center;
}
#ixcont07 .inbox .bgimg {
	position: absolute;
	margin-left: 0;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
#ixcont07 .inbox .bgimg img {
	width: 100%;
	margin: auto;
}
#ixcont07 .contents_inner {
	position: relative;
	display: block;
	width: 100%;
	margin: auto;
	padding: 150px 0 0;
}
#ixcont07 .contents_inner .cbox {
	width: 94%;
	margin: 0 auto;
	text-align: left;
	background: url(../n_img/white.png) repeat;
	padding: 40px 20px;
	border: solid 1px #ccc;
}

#ixcont07 .contents_inner .cbox h4 {
	line-height: 1.4em;
}
#ixcont07 .contents_inner .cbox .textbox {
	margin-bottom: 25px;
	font-size: 1.1em;
}
#ixcont07 .contents_inner .cbox .btnbox {
	width: 80%;
	height: 80px;
	margin: 0 10%;
	padding: 20px 0 0;
	text-align: center;
}


/* ixcont08
---------------------------------------------------- */

.voicebox {
	width: 90%;
	margin: 0 auto 20px;
	padding: 80px 0 60px;
}
.voicebox+.voicebox {
	border-top: solid 1px #ccc;
}
.voicebox .grid01 {
	float: none;
	width: 100%;
	margin: 0 0 5%;
	text-align: center;
}
.voicebox .grid03 {
	float: none;
	margin: 0 0 5%;
}
.voicebox .grid01 img {
	width: 100%;
	height: auto;
}
.voicebox .bgimg img {
	width: 100%;
	max-width: 1000px;
	height: auto;
}
.voicebox .grid02 {
	width: 100%;
	margin: 0 0 2%;
}
.voicebox .grid04 {
	float: none;
}



/* formbox
---------------------------------------------------- */

.formbox {
	position: relative;
	padding: 20px 40px;
}
.formbox .cttxt2 {
	margin: 0 0 50px;
	padding: 0 0 10px;
	font-size: 16px;
	line-height: 1.8em;
	text-align: left;
	border-bottom: dotted 1px #888;
}
.formbox table {
	width: 100%;
	margin: 0;
	font-size: 16px;
	font-size: 1.6rem;
}
.formbox table th  {
	display: block;
	width: 100%;
	padding: 15px 0 8px;
	font-size: 15px;
	color: #111;
	line-height: 1.5em;
	text-align: left;
	vertical-align: middle;
	border-bottom: solid 2px #eee;
}
.contcheck .formbox table th,
.contcheck .formbox table td {
	border-bottom: solid 1px #888;
}
.formbox table td {
	display: block;
	width: 100%;
	padding: 10px 10px 30px;
	font-size: 15px;
	color: #111;
	line-height: 1.5em;
	text-align: left;
	vertical-align: middle;
}
.formbox table tr.addfst th {
	padding: 10px 10px;
}
.formbox table tr.addfst td {
	padding: 10px 10px;
	border-bottom: none !important;
}
.formbox table tr.addsec th {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border-bottom: none !important;
}
.formbox table tr.addsec td {
	padding-top: 0 !important;
	padding-bottom: 30px !important;
	border-bottom: none !important;
}
.formbox table td.agmsg {
	padding: 0px 10px 15px;
}



}
/* --------------------------------------------------------------------------------------------------*/

@media only screen and (max-width: 640px){


.mainimg .inviconlist li {
	float: left;
	width: 30%;
	text-align: center;
}
.mainimg .inviconlist li img {
	display: block;
	width: 100%;
}


/* Topics
---------------------------------------------------- */

#topics {
	width: 100%;
	padding: 40px 0 30px;
	background: #36261d;
}
#topics .subtitle {
	width: 90%;
	margin: 0 auto 30px;
}
#topics .subtitle h1 {
	font-size: 2.0em;
	color: #fff;
	font-weight: 500;
	line-height: 1.2em;
	letter-spacing: 0.3em;
	text-align: left;
}
.swiper {
	width: 100%;
	height:  160px;
}
.swiper-slide {
	width: 360px !important;
}
.swiper-slide img {
	display: block;
	width: 100%;
	height: auto;
}
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom, .swiper-pagination-fraction {
	bottom: 5px !important;
}
.swiper-pagination-bullet {
	width: 10px !important;
	height: 10px !important;
	margin: 0 8px !important;
	background-color: #fff !important;
	opacity: 1.0 !important;
}
.swiper-pagination-bullet-active {
	background-color: #e36f24 !important;
}



/* ixcont04
---------------------------------------------------- */

.casebox ul li {
	position: relative;
	width: 48%;
	margin: 0 0 2% 4%;
	line-height: 1.0em;
	text-align: left;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	box-sizing: border-box;
		-moz-border-radius: 6px;
		-webkit-border-radius: 6px;
	border-radius: 6px;
	border: solid 1px #888;
}
.casebox ul li:nth-of-type(3n+1) {
	margin: 0 0 2% 4%;
}
.casebox ul li:first-child,
.casebox ul li:nth-of-type(2n+1) {
	margin: 0 0 2%;
}
.content .btnbox {
	width: 100%;
}

/* ixcont05
---------------------------------------------------- */

.faqbox dt {
	display: block;
	margin: 0 0 12px 10px;
	padding: 48px 0 10px 6px;
	font-size: 1.6em;
	color: #111;
	background: url(../n_img/q.jpg) no-repeat 0 0;
	border-bottom: dotted 1px #333;
}
.faqbox dd {
	display: block;
	margin: 0 0 0 10px;
	padding: 48px 0 30px 6px;
	font-size: 1.1em;
	color: #333;
	background: url(../n_img/a.jpg) no-repeat 10px 0;
}
#ixcont05 .inbox .btnbox {
	width: 90%;
}



}

/* --------------------------------------------------------------------------------------------------*/

@media only screen and (max-width: 480px){


.mainimg .inviconlist {
	position: absolute;
	width: 90%;
	left: 5%;
	bottom: 60px;
}

.mainimg .inviconlist ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.mainimg .inviconlist li {
	float: left;
	width: 32%;
	text-align: center;
}


/* ixcont01
---------------------------------------------------- */

#ixcont01 .contents_inner .cbox h4,
#ixcont02 .contents_inner .cbox h4,
#ixcont03 .contents_inner .cbox h4 {
	display: block;
	padding: 0 0 8px 10px;
	font-size: 1.5em;
	color: #e36f24;
	font-weight: 500;
	line-height: 1.0em;
	border-bottom: dotted 1px #111;
}
.circle_number {
	display: block;
	width: 40px;
	height: 40px;
	margin: 0 0 8px -10px;
	padding-top: 8px;
	background-color: #e36f24;
	border-radius: 50%;
	font-size: 18pt;
	color: #fff;
	text-align: center;
	box-sizing: border-box;
}



/* ixcont02
---------------------------------------------------- */



/* ixcont03
---------------------------------------------------- */


#ixcont03 .contents_inner .cbox {
	padding: 30px 20px;
	text-align: left;
}
#ixcont03 .contents_inner .cbox h2 {
	margin-bottom: 20px;
	font-size: 1.514em;
}
#ixcont03 .contents_inner .cbox .textbox {
	margin-bottom: 20px;
	font-size: 1.1em;
}


/* ixcont04
---------------------------------------------------- */

.casebox ul li {
	position: relative;
	width: 100%;
	margin: 0 0 2%;
	line-height: 1.0em;
	text-align: left;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	box-sizing: border-box;
		-moz-border-radius: 6px;
		-webkit-border-radius: 6px;
	border-radius: 6px;
	border: solid 1px #888;
}
.casebox ul li:nth-of-type(3n+1),
.casebox ul li:first-child,
.casebox ul li:nth-of-type(2n+1) {
	margin: 0 0 2%;
}
.casebox ul li div {
	min-height: 30px;
	padding: 6px 14px;
	font-size: 0.9em;
	color: #666;
	font-weight: 500;
	line-height: 1.5em;
}



/* ixcont06
---------------------------------------------------- */


#ixcont06 .contents_inner .cbox {
	padding: 30px 20px;
	text-align: left;
}
#ixcont06 .contents_inner .cbox h2 {
	margin-bottom: 20px;
	font-size: 1.514em;
}
#ixcont06 .contents_inner .cbox .textbox {
	margin-bottom: 20px;
	font-size: 1.1em;
}

/* ixcont07
---------------------------------------------------- */


#ixcont07 .contents_inner .cbox {
	padding: 30px 20px;
	text-align: left;
}
#ixcont07 .contents_inner .cbox h2 {
	margin-bottom: 20px;
	font-size: 1.514em;
}
#ixcont07 .contents_inner .cbox .textbox {
	margin-bottom: 20px;
	font-size: 1.1em;
}

/* formbox
---------------------------------------------------- */

.formbox {
	position: relative;
	padding: 20px;
}
.formbtnbox {
	width: 80%;
	margin: 40px auto 30px;
	line-height: 1.5em;
	text-align: center;
}



}


/* --------------------------------------------------------------------------------------------------*/

@media only screen and (max-width: 400px){


}