@charset "UTF-8";
/* CSS Document */


/* main-img-top */

.main-img-top {
	width: 100%;
	position: relative;
}

.main-img-top::after {
	content: "";
	position: absolute;
right: 40px;
top: 40px;
	background-image: url("common/images/logo-header.svg");
background-position: right top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 212px;
	height: 38px;
}

.main-img-top .box-in {
	width: 100%;
	background-image: url("top/images/main-img.jpg");
background-position: center top;
background-repeat: no-repeat;
background-size: cover;
	height: 1165px;
	position: relative;
}

.main-img-top .box-img {
	width: 100%;
	position: relative;
	margin-top: -180px;
}

.main-img-top .box-img img {
	width: 100%;
height: auto;
}

.main-img-top .box-img::after {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("top/images/scroll.svg");
background-position: center top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 271px;
	margin-top: -30px;
}


.title-box-top {
	position: absolute;
left: 5%;
top: 80px;
	width: 70%;
}

.title-box-top h2, .title-box-top h3, .title-box-top h4, .title-box-top p, .contents02 h2, .contents02 h3, .contents02 h4, .contents02 h5 {
	font-family: "Zen Maru Gothic", serif;
	color: #FFFF00;
line-height: 1.2;
	font-weight: 500;
}

.title-box-top h2, .contents02 h2 {
	font-size: 96px;
	color: #FFF;
}

.title-box-top h2 span {
	color: #ffed00;
	position: relative;
}

.title-box-top h2 span::before {
	content: "";
	position: absolute;
left: -2%;
top: 20px;
	background-color: #e42775;
	display: inline-block;
	width: 104%;
	height: 80%;
	z-index: -1;
}

.contents02 h2 {
	font-size: 76px;
	margin-bottom: 30px;
}

.title-box-top h3, .contents02 h3 {
	font-size: 38px;
	padding: 50px 0px 5px;
}

.contents02 h3 {
	padding-top: 0px;
}

.title-box-top h4, .contents02 h4 {
	font-size: 60px;
	text-indent: -30px;
}

.title-box-top h5 {
	padding-top: 30px;
}

.contents02 h5 {
	font-size: 96px;
	line-height: 1;
}

.contents02 h5::before, .contents02 h5::after {
	font-size: 30px;
	line-height: 1.2;
	letter-spacing: 0.1em;
}

.contents02 h5::before {
	content: "1枚";
}

.contents02 h5::after {
	content: " 税込価格";
}

.title-box-top p, .contents02 p {
color: #FFF;
	padding-top: 30px;
}

.title-box-top p {
font-size: 38px;
	line-height: 1.4;
}

.contents02 p {
line-height: 1.8;
	text-indent: -16px;
	margin-left: 16px;
}


/* contents-top */

.contents-top {
	width: 100%;
}


/* contents01 */

.contents01 {
	width: 100%;
	background-image: url("top/images/back02.svg");
background-position: center top 50px;
background-repeat: no-repeat;
	padding: 50px 0px 120px;
}

.contents01 .box-inner {
	width: 810px;
}

.contents01 .box-inner .box:not(:last-child) {
	margin-bottom: 130px;
}

.contents01 h3 {
	font-family: "Zen Maru Gothic", serif;
	font-size: 50px;
color: #FF7789;
line-height: 1.4;
font-weight: 500;
	text-align: center;
	margin-bottom: 50px;
	opacity: 0.6;
}

.contents01 p {
	font-size: 18px;
	line-height: 2.2;
	letter-spacing: 0em;
}

.contents01 p span {
	color: #FF7789;
	font-weight: 500;
}

/* contents02 */

.contents02 {
	width: 100%;
	background-color: #46B9CA;
	padding: 80px 0px;
	margin-bottom: 65px;
}

.contents02 .box-inner {
	width: 1260px;
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
}


/* contents03 */

.contents03 {
	width: 100%;
	margin-bottom: 65px;
	text-align: center;
	background-image: url("top/images/back03.jpg");
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
	padding: 100px 0px 80px;
}

.contents03 .midashi-box h2 {
	color: #FF7789;
}

.contents03 .box-inner {
	width: 1170px;
	background-color: #FFF;
	border-radius: 60px;
	padding-bottom: 60px;
	position: relative;
}

.contents03 .box-inner-in {
	display: flex;
  justify-content: center;
flex-wrap: wrap;
	gap:0px 35px;
}

.contents03 .box-inner::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	background-image: url("top/images/icon01.svg");
background-position: center top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 210px;
	margin-top: -208px;
}

.contents03 .box {
	width: 225px;
	position: relative;
	padding-top: 120px;
}

.contents03 .box::before {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
background-position: center top;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 100%;
	height: 103px;
}

.contents03 .box:nth-child(1)::before {
	background-image: url("top/images/s01.svg");
}

.contents03 .box:nth-child(2)::before {
	background-image: url("top/images/s02.svg");
}

.contents03 .box:nth-child(3)::before {
	background-image: url("top/images/s03.svg");
}

.contents03 .box:nth-child(4)::before {
	background-image: url("top/images/s04.svg");
}

.contents03 h4 {
	font-family: "Zen Maru Gothic", serif;
	font-size: 18px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 500;
	padding: 10px 0px;
	width: 190px;
	border-radius: 60px;
	display: inline-block;
	background-color: #FF7789;
}

.contents03 p {
	text-align: left;
	padding-top: 20px;
	letter-spacing: 0em;
}

.contents03 p span {
	color: #ff7789;
	font-weight: 500;
}


/* contents04 */

.contents04 {
	width: 100%;
	padding: 80px 0px 100px;
	background-color: #DCEAEA;
	text-align: center;
}

.contents04 .midashi-box h2 {
	color: #00A99C;
}

.contents04 > p {
	margin-bottom: 40px;
}


/*contact*/
.contact {
	width: 1000px;
	text-align: left;
}

.contact table {
	width: 100%;
	text-align: left;
}

.contact table .box {
	margin-bottom:5px;
}

.contact table tr {
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
	align-items: center;
	padding: 20px 0px;
}

.contact table tr.t-end {
	align-items: flex-start;
}

.contact table tr td {
	color: #000;
	line-height:1.6;
	position: relative;
}

.contact table tr td:first-child {
	flex: 1;
	padding-right: 20px;
	font-family: "Zen Maru Gothic", serif;
	font-size: 23px;
color: #0078B0;
line-height: 1.2;
letter-spacing: 0.05em;
font-weight: 400;
}

.contact table tr td:last-child {
	width: 750px;
}

.contact table span.sp-view {
	display: none;
}

.contact table tr td input {
	width:100%;
	border-radius: 10px;
	border-style : solid;
border-color : #FFF;
border-width : 2px;
}

.contact table tr td input.radio {
	width: 15px;
}

.contact table tr td textarea {
	width:100%;
	border-radius: 10px;
	border-style : solid;
border-color : #FFF;
border-width : 2px;
}

.contact table tr.errer td {
	color: #f3516c;
	vertical-align: middle;
}


.contact .hissu::after {
	content: "必 須";
	position: absolute;
right: 20px;
top: 12px;
	width: 80px;
	background-color: #FF6052;
	padding: 6px 0px;
	text-align: center;
	font-size: 16px;
	line-height: 1.2;
	color: #FFF;
	display: inline-block;
}

p.text02 {
	line-height: 1.6;
}


input,textarea,button{
	margin:0;
	padding:15px;
	font-size:100%;
}

td div.space {
	margin-top: 20px;
}

input[type="text"] {
	outline: 0;
	border: 1px solid #FFF;
}

textarea[type="textarea"] {
	border: 1px solid #FFF;
	padding: 15px;
}


.button {
	text-align: center;
	margin-top: 50px;
}

button {
	cursor: pointer;
	border:none;
	background-color:rgba(0,0,0,0);
}

.button img {
	height:40px;
	width:auto;
}

button span, a.btn-mail, .btn-box input, .btn-back {
	display:inline-block;
	padding:15px 150px;
	background-color:#3195a4;
	font-size: 20px;
	color:#FFF;
	font-weight: 500;
	letter-spacing:0.1em;
	transition: .5s;
	border : solid rgba(255,255,255,0) 1px;
}

button:hover span, a.btn-mail:hover, .btn-box input:hover, .btn-back:hover {
	background-color: #0078b0;
}


.btn-box {
	padding-top:40px;
	clear:both;
	margin-bottom:30px;
}



#formWrap {
	width:100%;
	padding-top: 60px;
	padding-bottom: 60px;
}

.formtable {
	width: 100%;
}

.formtable tr {
	padding-left:5px;
	padding-right:5px;
	display:block;
	padding-top: 20px;
	padding-bottom: 20px;
}

.formtable th {
	text-align: left;
	font-weight: normal;
	width: 190px;
	display: inline-block;
	vertical-align:top;
	margin-bottom:10px;
}

.formtable td  {
	text-align: left;
	font-weight: normal;
	width: 660px;
	display: inline-block;
	vertical-align:top;
}

.formtable input  {
	width: 100%;
}




.contact h4 {
	color: #333333;
	line-height: 1.6;
	letter-spacing: 0.05em;
	font-weight: normal;
	margin-bottom:30px;
}

.contact h5 {
	color: #333333;
	line-height: 1.6em;
	letter-spacing: 0.4em;
	font-size: 20px;
	font-weight: normal;
	text-align: center;
	margin-bottom: 20px;
}

span.text003 {
	display:none;
}


.contact .checktext {
    width: 100%;
	text-align: center;
	padding-top: 50px;
}

.contact .checktext h6 {
	font-size: 19px;
color: #333;
line-height: 1.2;
letter-spacing: 0.16em;
font-weight: normal;
	margin-bottom: 20px;
}

.contact .checktext div.box-text {
	padding: 0px 30px;
	background-color: #FFF;
	margin-bottom: 20px;
	text-align: left;
	overflow: auto;
}

.contact .checktext div.box-text p {
    color: #000;
    line-height: 1.8;
    letter-spacing: 0.05em;
	font-size: 16px;
	padding-bottom: 30px;
}


.contact .checktext .box-box {
    height: 200px;
	margin-top: 40px;
}

/* contents05 */

.contents05 {
	width: 100%;
	padding: 80px 0px 120px;
	text-align: center;
}

.contents05 .midashi-box h2 {
	color: #00A99C;
	letter-spacing: 0.3em;
}

.contents05 .box-inner {
	width: 1070px;
	margin-bottom: 70px;
}

.contents05 table {
	width: 100%;
}

.contents05 table tr {
	border-bottom-style : solid;
border-color : #b2b2b2;
border-width : 1px;
}

.contents05 table tr:first-child {
	border-top-style : solid;
}

.contents05 table td {
	padding: 30px 20px;
	text-align: left;
line-height: 1.6;
letter-spacing: 0.05em;
}

.contents05 table td:first-child {
	white-space: nowrap;
	position: relative;
}

.contents05 table td:first-child::before {
	content: "";
	position: absolute;
left: 0px;
bottom: 0px;
	width: 100%;
	height: 1px;
	display: block;
	background-color: #000;
	margin-bottom: -1px;
}

.contents05 table tr:first-child td:first-child::after {
	content: "";
	position: absolute;
left: 0px;
top: 0px;
	width: 100%;
	height: 1px;
	display: block;
	background-color: #000;
	margin-top: -1px;
}

.contents05 h6 a {
	font-size: 20px;
color: #FFF;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: 400;
	display: inline-block;
	padding: 15px 60px;
	background-color: #3195a4;
}

.contents05 h6 a:hover {
	background-color: #0078b0;
	opacity: 1;
}


.sp-view {
	display: none;
}
