/*********************************************************
					common
*********************************************************/
body {
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    line-height: 1.5em;
}
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
ul,ol,dl {
    list-style: none;
}
#wrap {
	padding-bottom: 100px;
    min-width: 1200px;
}
a:hover {
    opacity: 0.8;
    transition: 0.3s;
}
/**********************************************
				clearfix
**********************************************/
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	font-size: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
/* Hides from IE Mac */
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
/* End Hack */ 
.clear {
	clear: both;
}

/**********************************************
				content
**********************************************/
.sp {
    display: none !important;
}
.header {
    position: relative;
}
.hd_box {
    position: relative;
    width: 1100px;
    margin: auto;
}
.hd_txt01 {
	position: absolute;
	top: 30px;
	left: 50px;
	z-index: 9999;
}
.hd_txt03 {
	position: absolute;
	z-index: 9999;
	top: 50px;
	right: 26px;
}
.hd_txt02 {
	position: absolute;
	z-index: 9999;
	left: 10px;
	top: 315px;
}
.main_visual_bg {
    text-indent: -9999px;
    position: absolute;
    z-index: 9;
    top: 465px;
    left: 0;
    right: 0;
    background-image: url("images/top_bg01.png");
    background-repeat: no-repeat;
    background-position: bottom center;
}
.illust01 {
	position: relative;
	z-index: 99;
	text-align: center;
	margin-top: -160px;
}
.hd_txt04 {
    text-indent: -9999px;
    background-image: url("images/txt01.svg");
    background-repeat: no-repeat;
    -webkit-background-size: 873px;
    background-size: 873px;
    background-position: center center;
    height: 193px;
    margin-top: 30px;
}
.hojokin_box {
	text-align: center;
	line-height: 0;
    background-image: url("images/bg_hojokin.png");
	padding: 75px 0 55px;
	max-width: 1720px;
	margin: 35px auto 0;
}
.box01 {
    background-image: url("images/main_content_bg_01.webp");
    background-repeat: no-repeat;
    max-width: 1720px;
    margin: 80px auto 0;
    position: relative;
    padding-top: 18px;
    min-height: 2222px;
}
.box01_01 {
	text-align: center;
	position: absolute;
	top: -20px;
	left: -150px;
	right: 0;
  position: relative; /* 今回だけ */
	top: 0;
	margin: auto; /* 今回だけ */
  width: 778px;
}
.box01_02 {
	text-indent: -9999px;
	background-image: url("images/main_content_01.webp");
	background-repeat: no-repeat;
	background-position: left top;
	-webkit-background-size: contain;
	background-size: contain;
	width: 1197px;
	margin-top: 3px;
	height: 822px;
	margin-left: auto;
	margin-right: auto;
}
.box01_03 {
	text-indent: -9999px;
	background-image: url("images/sub_content_01.webp");
	background-repeat: no-repeat;
	background-position: center top;
    -webkit-background-size: contain;
    background-size: contain;
	height: 1238px;
	margin-top: -57px;
}
.box01_04 {
	position: absolute;
	bottom: 11px;
	right: 0;
}
.box01_04 a:hover {
    opacity: 0.8;
    transition: 0.3s;
}
.w1000px {
    width: 1000px;
    position: relative;
    margin: auto;
}
.box02 {
	background-color: #ffef86;
	max-width: 1720px;
	margin: 96px auto 0;
	position: relative;
	padding-bottom: 110px;
}
.box02_01 {
	text-align: center;
	position: relative;
	top: -7px;
}
.box02_02 {
    text-indent: -9999px;
    background-image: url("images/box02_02.png");
    background-repeat: no-repeat;
    background-position: right top;
    height: 665px;
}
.box02_03 {
	text-indent: -9999px;
	background-image: url("images/box02_03.png");
	background-repeat: no-repeat;
	background-position: left top;
	height: 669px;
	max-width: 1200px;
	margin: 70px auto 0;
}
.box02_04 {
	text-indent: -9999px;
	background-image: url("images/box02_04.png");
	background-repeat: no-repeat;
	background-position: right top;
	height: 581px;
	max-width: 1200px;
	margin: 70px auto 0;
}
.box03 {
	background-image: url("images/box03_bg.png");
	background-repeat: no-repeat;
	max-width: 1720px;
	margin: 95px auto 0;
	min-height: 1318px;
	position: relative;
	padding-top: 60px;
}
.box03_01 {
    text-indent: -9999px;
    background-image: url("images/box03_01.png");
    background-repeat: no-repeat;
    background-position: right top;
    height: 1215px;
    max-width: 1246px;
    margin: auto;
}
.box04 {
	text-indent: -9999px;
	background-image: url("images/box04_01.png");
	background-repeat: no-repeat;
	background-position: center top;
	height: 788px;
	margin-top: 110px;
}
.box05 {
	position: relative;
	background-color: #e1eef8;
	width: 1100px;
	margin: -1px auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	padding: 40px 0;
}
.box05_01 {
    background-image: url("images/box05_01.png");
    background-repeat: no-repeat;
    text-indent: -9999px;
    background-position: center top;
    height: 153px;
    margin-top: 50px;
}
.box05_02 {
    text-indent: -9999px;
    background-image: url("images/box05_02.png");
    background-repeat: no-repeat;
    -webkit-background-size: contain;
    background-size: contain;
    width: 480px;
    height: 500px;
}
.box05_03 {
    text-indent: -9999px;
    background-image: url("images/box05_03.png");
    background-repeat: no-repeat;
    -webkit-background-size: contain;
    background-size: contain;
    width: 480px;
    height: 500px;
}
.box05_04 {
	margin: 40px 0 0;
}
.bnr_premium {
    text-align: center;
    margin-top: 70px;
}

/**  **/
.scroll-up {
  opacity: 0; 
  visibility: hidden;
  transform: translateY(50px);
  transition: all 1s;
}
.scroll-up.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
}
