* {
	margin: 0;
	padding: 0;
}

*, *: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 {
  font-size: 62.5%; /* sets the base font to 10px for easier math */
}

body {
	font-family: 'Lato', 'Noto Sans JP', '游ゴシック Medium', '游ゴシック体', 'Yu Gothic Medium', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: 1.6rem;
	color: #666666;
	width: 100%;
	line-height: 1.44;
	letter-spacing: 0.01em;
}

a,a:hover,a:visited {
	color: #666666;
}

a{
	outline: none;
}

a:focus{
	outline: none;
}

h1,h2,h3,h4,h5 {
	font-weight: bold;
}

input[type="submit"], input[type="reset"], input[type="button"], button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.formError {
	margin-top: -70px !important;
}

.formError .formErrorContent {
	font-size: 1.4rem !important;
}



@media print, screen and (min-width:0px){


/* ---------- page top ボタン ---------- */

#pageTop {
	position: fixed;
	bottom: 3em;
	right: 3em;
	z-index: 200;
}

#pageTop a {
	display: block;
	z-index: 999;
	border-radius: 30px;
	width: 60px;
	height: 60px;
	border: solid 1px rgba(0,0,0,0.1);
	color: #333;
	font-size: 2em;
	font-weight: bold;
	line-height: 60px;
	text-decoration: none;
	text-align: center;
	background-color: rgba(255,255,255,0.4);
}

/* ---------- ヘッダー ---------- */

#header {
	width: 100%;
	height: auto;
	margin: 0 auto;
}

#header .header-box {
	width: 1200px;
	height: auto;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
	border-bottom: solid 1px #e60012;
}

#header .header-logo {
	width: 800px;
	height: auto;
	overflow:hidden;
	float: left;
}

#header .header-logo .logo-box a {
	display: block;
	width: 100%;
	height: 0;
	padding-top: 95px;
	background-image: url("images/header_logo.jpg");
	background-repeat: no-repeat;
	background-position: left bottom;
}

#header .header-tel {
	width: 400px;
	height: 63px;
	text-align: right;
	float: left;
	margin-top: 15px;
	font-size: 1.8rem;
	font-weight: normal;
}

#header .header-tel a {
	font-size: 3.6rem;
	font-weight: bold;
	color: #e6001c;
	text-decoration: none;
	margin-top: 1.5rem;
}

#header .header-tel-mobile {
	display: none;
}

#header .header-left {
	width: 500px;
	height: 140px;
	overflow: hidden;
	float: right;
}

/* ---------- ハンバーガーメニュー ---------- */

#nav-drawer {
	position: relative;
}

/*チェックボックス等は非表示に*/
.nav-unshown {
	display:none;
}

/*アイコンのスペース*/
#nav-open {
	position: fixed;
	top: 3rem;
	right: 3rem;
	z-index: 5;
	display: inline-block;
	width: 50px;
	height: 50px;
	vertical-align: middle;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
	position: absolute;
	height: 5px;/*線の太さ*/
	width: 50px;/*長さ*/
	border-radius: 5px;
	background: #666;
	display: block;
	content: '';
	cursor: pointer;
}
#nav-open span:before {
	bottom: -17px;
}

/* #nav-open span:after {
	bottom: -34px;
} */

/*閉じる用の薄黒カバー*/
#nav-close {
	display: none;/*はじめは隠しておく*/
	position: fixed;
	z-index: 99;
	top: 0;/*全体に広がるように*/
	left: 0;
	width: 100%;
	height: 100%;
	background: black;
	opacity: 0;
	transition: .3s ease-in-out;
}

/*中身*/
#nav-content {
	overflow: auto;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;/*最前面に*/
	width: 90%;/*右側に隙間を作る（閉じるカバーを表示）*/
	max-width: 25%;/*最大幅（調整してください）*/
	height: 100%;
	background: #56a764;/*背景色*/
	transition: .3s ease-in-out;/*滑らかに表示*/
	-webkit-transform: translateX(-105%);
	transform: translateX(-105%);/*左に隠しておく*/
	padding: 2rem;
}

#nav-content span.menu-midashi {
	display: block;
	width: 100%;
	height: auto;
	font-size: 2rem;
	font-weight: bold;
	color: #ffffff;
	text-align: center;
	margin: 2rem auto;
}

#nav-content ul,
#nav-content li {
	list-style: none;
}

#nav-content li a {
	display: block;
	width: 100%;
	height: auto;
	padding: 2rem 1rem;
	text-decoration: none;
	color: #ffffff;
	border-bottom: dotted 1px #ffffff;
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
	display: block;/*カバーを表示*/
	opacity: .5;
}

#nav-input:checked ~ #nav-content {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);/*中身を表示（右へスライド）*/
	box-shadow: 6px 0 25px rgba(0,0,0,.15);
}


/* ---------- メインエリア ---------- */

#main {
	width: 100%;
	height: auto;
	overflow: hidden;
	margin-bottom: 3rem;
}

#content {
	width: 100%;
	height: auto;
	overflow: hidden;
}

/* ---------- content エリア ---------- */

#content .content-item {
	width: 1200px;
	height: auto;
	overflow: hidden;
	margin: 0 auto;
}

/* ---------- content01 エリア ---------- */

#content .content01 {
	background-image: url(images/item01_back.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center bottom;
	margin-top: 2rem;
}

#content .content01 h2 {
	width: 740px;
	height: 0;
	padding-top: 270px;
	overflow: hidden;
	margin: 0 auto;
	background-image: url(images/campaign_title.png);
	background-repeat: no-repeat;
	background-size: 80% auto;
	background-position: center top 30px;
}

#content .content01 .daigaku-list {
	width: 50%;
	height: auto;
	overflow: hidden;
	background-color: rgba(255,255,255,0.7);
	border-radius: 10px;
	margin: 1rem auto;
	padding: 1rem;
	text-align: center;
	font-size: 2.4rem;
	font-weight: bold;
}

#content .content01 .daigaku-list h4 {
	font-size: 2.6rem;
	color: #e60012;
}

#content .content01 .daigaku-list ul,
#content .content01 .daigaku-list li {
	list-style: none;
}

#content .content01 .daigaku-list li.tokudai {
	color: #329393;
}

#content .content01 .daigaku-list li.shikoku {
	color: #2966a1;
}

#content .content01 .daigaku-list li.bunri {
	color: #e50082;
}

#content .content01 .daigaku-list li.anabuki {
	color: #8d1d34;
}

#content .content01 .daigaku-list .campaign-text {
	color: #e60012;
}

/* ---------- content01-2 エリア ---------- */

#content .content01-2 {
	height: 500px;
	background-image: url("images/content01-2back.png");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 100% auto;
}

#content .content01-2 .present-plus {
	width: 100%;
	height: 0;
	padding-top: 400px;
	overflow: hidden;
	background-image: url("images/content01-2text.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;
}



/* ---------- content02 エリア ---------- */

#content .content02 {
	min-height: 500px;
	background-image: url(images/item02_back.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center bottom;
}

#content .content02 h2 {
	width: 904px;
	height: 0;
	padding-top: 140px;
	overflow: hidden;
	background-image: url(images/get_title.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
	margin: 0 auto;
	margin-top: 10rem;
}

#content .content02 .get-list {
	width: 980px;
	height: 0;
	padding-top: 150px;
	overflow: hidden;
	background-image: url(images/get_list_back.png);
	background-size: 100% auto;
	background-repeat: no-repeat;
	margin: 0 auto;
	margin-top: 7rem;
}

/* ---------- content03 エリア ---------- */

#content .content03 {
	min-height: 1000px;
	background-image: url(images/item03_back.png), url(images/item03_back.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center bottom;
}

#content .content03 .get-big {
	width: 90%;
	height: auto;
	overflow: hidden;
	margin: 0 auto;
	margin-top: 10rem;
}

#content .content03 .get01 {
	width: 100%;
	height: 0;
	padding-top: 150px;
	overflow: hidden;
	background-image: url(images/get01.png);
	background-repeat: no-repeat;
	background-position: left top;
	margin-bottom: 4rem;
}

#content .content03 .get02 {
	width: 100%;
	height: 0;
	padding-top: 300px;
	overflow: hidden;
	background-image: url(images/get02.png);
	background-repeat: no-repeat;
	background-position: left top;
	margin-bottom: 4rem;
}

#content .content03 .present-list {
	width: 100%;
	height: auto;
	overflow: hidden;
	margin-left: 35px;
	padding-top: 2rem;
}

#content .content03 .present-list dl,
#content .content03 .present-list dt,
#content .content03 .present-list dd {
	list-style: none;
	font-size: 1.6rem;
	color: #666666;
}

#content .content03 .present-box {
	display: block;
	width: 251px;
	height: 200px;
	overflow: hidden;
	margin-right: 35px;
	background-color: #ffffff;
	float: left;
	margin-bottom: 4rem;
}

#content .content03 .present-list dt {
	display: block;
	width: 100%;
	height: 30px;
	line-height: 30px;
	text-align: center;
}

#content .content03 .present-list dd {
	display: flex;
	width: 100%;
	height: 170px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

#content .content03 .present-list dd img {
	height: 140px;
	width: auto;
}

#content .content03 .present-list .present00 {
	background-color: #ffffff;
	height: 0;
	padding-top: 200px;
	background-image: url(images/goods.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100% auto;
}

#content .content03 .get03 {
	width: 100%;
	height: 0;
	padding-top: 150px;
	overflow: hidden;
	background-image: url(images/get03.png);
	background-repeat: no-repeat;
	background-position: left top;
	margin-bottom: 4rem;
}

/* ---------- content04 エリア ---------- */

#content .content04 {
	min-height: 500px;
	background-image: url(images/item04_back.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center bottom;
}

#content .content04 h2 {
	font-size: 3.8rem;
	font-weight: bold;
	color: #e60012;
	text-align: center;
	margin-top: 4rem;
}

#content .content04 .entry-text {
	width: 70%;
	height: auto;
	margin-left: 4rem;
	margin-top: 2rem;
	background-color: rgba(255,255,255,0.7);
	border-radius: 10px;
	padding: 1rem;
}

#content .content04 .entry-list {
	width: 85%;
	height: auto;
	overflow: hidden;
	margin-left: 2rem;
	margin-top: 2rem;
}

#content .content04 .entry-list .entry-box {
	width: 30%;
	height: 20rem;
	overflow: hidden;
	padding: 1rem;
	margin: 0 1.5%;
	font-size: 1.8rem;
	font-weight: bold;
	float: left;
	background-color: rgba(255,255,255,0.7);
	border: solid 3px #e60012;
	border-radius: 10px;
}

#content .content04 .entry-list .entry-box {
	background-position: center bottom 1rem;
	background-size: auto 40%;
	background-repeat: no-repeat;
}

#content .content04 .entry-list .entry-box01 {
	background-image: url(images/entry01_back.png);
}

#content .content04 .entry-list .entry-box02 {
	background-image: url(images/entry02_back.png);
}

#content .content04 .entry-list .entry-box03 {
	background-image: url(images/entry03_back.png);
}

#content .content04 .entry-box01 dt {
	color: #00a0e9;
	margin-bottom: 1rem;
}

#content .content04 .entry-box01 dt span {
	display: inline-block;
	width: 2.2rem;
	height: 2.2rem;
	background-color: #00a0e9;
	color: #ffffff;
	text-align: center;
	line-height: 2.2rem;
	border-radius: 1.1rem;
	margin-right: 0.5rem;
}

#content .content04 .entry-box01 dd {
	color: #00a0e9;
}

#content .content04 .entry-box02 dt {
	color: #e4007f;
	margin-bottom: 1rem;
}

#content .content04 .entry-box02 dt span {
	display: inline-block;
	width: 2.2rem;
	height: 2.2rem;
	background-color: #e4007f;
	color: #ffffff;
	text-align: center;
	line-height: 2.2rem;
	border-radius: 1.1rem;
	margin-right: 0.5rem;
}

#content .content04 .entry-box02 dd {
	color: #e4007f;
}

#content .content04 .entry-box03 dt {
	color: #6fba2c;
	margin-bottom: 1rem;
}

#content .content04 .entry-box03 dt span {
	display: inline-block;
	width: 2.2rem;
	height: 2.2rem;
	background-color: #6fba2c;
	color: #ffffff;
	text-align: center;
	line-height: 2.2rem;
	border-radius: 1.1rem;
	margin-right: 0.5rem;
}

#content .content04 .entry-box03 dd {
	color: #6fba2c;
}

#content .content04 .entry h3 {
	width: 450px;
	height: 0;
	padding-top: 65px;
	overflow: hidden;
	margin: 2em auto;
	background-image: url(images/entry_title.png);
	background-repeat: no-repeat;
	background-position: center top;
}

#content .content04 .entry .entry-button-box a {
	display: block;
	width: 60%;
	margin: 0 auto;
	margin-bottom: 4rem;
	padding: 2.5rem 1rem;
	height: auto;
	font-size: 4rem;
	font-weight: bold;
	background-color: #e60012;
	color: #ffffff;
	border: solid 3px #ffffff;
	border-radius: 2rem;
	text-decoration: none;
	text-align: center;
}

/* ---------- フッター ---------- */

#footer {
	width: 100%;
	height: auto;
	margin: 0 auto;
}

#footer .footer-box {
	width: 1200px;
	height: auto;
	margin: 0 auto;
	margin-top: 4rem;
	overflow: hidden;
	position: relative;
}

#footer .footer-logo {
	width: 800px;
	height: auto;
	overflow:hidden;
	float: left;
}

#footer .footer-logo .logo-box a {
	display: block;
	width: 100%;
	height: 0;
	padding-top: 95px;
	background-image: url("images/header_logo.jpg");
	background-repeat: no-repeat;
	background-position: left bottom;
}

#footer .footer-tel {
	width: 400px;
	height: 63px;
	text-align: right;
	float: left;
	margin-top: 15px;
	font-size: 1.8rem;
	font-weight: normal;
}

#footer .footer-tel a {
	font-size: 3.6rem;
	font-weight: bold;
	color: #e6001c;
	text-decoration: none;
	margin-top: 1.5rem;
}

#footer .footer-left {
	width: 500px;
	height: 140px;
	overflow: hidden;
	float: right;
}
/* ---------- copyright ---------- */

#copyright {
	width: 1200px;
	height: auto;
	overflow: hidden;
	margin: 0 auto;
	padding: 0.6rem 0;
	text-align: center;
	border-top: solid 1px #e60012;
}

/* ---------- PC用ここまで ---------- */

}

/* ---------- 画面サイズが767px以下の場合読み込む---------- */

@media screen and (max-width:767px) {

html{
	font-size: 62.5%;
}

body {
	width: 100%;
	font-size: 1.4rem;
	background-image: none;
}
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.formError {
	left: 60% !important;
}

/* ---------- ハンバーガーメニュー ---------- */

#nav-open {
	top: 1.5rem;
	right: 1rem;
	width: 35px;
	height: 35px;
}

#nav-open span,
#nav-open span:before,
#nav-open span:after {
	width: 35px;
	height: 3px;
	border-radius: 3px;
}

#nav-open span:before {
	bottom: -12px;
}

/* #nav-open span:after {
	bottom: -24px;
} */

#nav-content {
	max-width: 60%;
	padding: 1rem;
}

#nav-content span.menu-midashi {
	margin: 1rem auto;
}

/* ---------- ヘッダー ---------- */

#header .header-box {
	width: 94%;
	height: auto;
	overflow: hidden;
	margin: 0 auto;
}

#header .header-box .header-logo {
	width: 100%;
}

#header .header-logo .logo-box {
	width: 100%;
	height: auto;
}

#header .header-logo .logo-box a {
	display: block;
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 17%;
	margin-top: 3%;
	background-image: url(images/header_logo_m.jpg);
	background-size: 100% auto;
	background-repeat: no-repeat;
}

#header h1 {
	width: 80%;
	top: 1rem;
	left: 18%;
	font-size: 1.2rem;
	font-weight: bold;
}

#header .header-tel {
	width: 100%;
	height: auto;
	text-align: center;
}

#header .header-tel a {
	font-size: 3.2rem;
}

#header .header-left {
	width: 100%;
	height: auto;
	float: none;
}

/* ---------- content01 ---------- */

#content {
	position: relative;
}

#content .content-item {
	width: 100%;
}

#content .content01 {
	height: auto;
	background-color: #8fd3f5;
	background-size: 200% auto;
	background-position: left bottom ;
	padding-bottom: 60%;
}

.title-imagebox {
	width: 100%;
	height: auto;
	border: none !important;
}

#content .content01 h2 {
	width: 100%;
	padding-top: 32%;
	background-position: center center;
	background-size: 80% auto;
}

#content .content01 .daigaku-list {
	width: 90%;
	font-size: 2rem;
	margin: 0 auto;
}

/* ---------- content01-2 ---------- */

#content .content01-2 {
	height: auto;
	background: none;
	margin-top: -30%;
}

#content .content01-2 .present-plus {
	padding-top: 36%;
}

/* ---------- content02 ---------- */

#content .content02 {
	min-height: 0;
}

#content .content02 h2 {
	width: 94%;
	padding-top: 20%;
	margin-top: 1em;
}

#content .content02 .get-list {
	width: 94%;
	padding-top: 20%;
	margin-top: 3em;
}

/* ---------- content03 ---------- */

#content .content03 {
	min-height: 0;
	background-position: top 6rem right,bottom -4rem right;
	background-size: 160%;
}

#content .content03 .get-big {
	width: 94%;
	margin-top: 1rem;
}

#content .content03 .get01 {
	padding-top: 20%;
	background-size: 94%;
	background-position: center center;
}

#content .content03 .get02 {
	padding-top: 40%;
	background-size: 94%;
	background-position: center center;
}

#content .content03 .present-list {
	margin-left: 0;
	height: auto;
}

#content .content03 .present-box {
	width: 46%;
	height: auto;
	overflow: hidden;
	margin: 2%;
	border: solid 1px rgba(0,0,0,0.08);
	border-radius: 5%;
}

#content .content03 .present-list dt {
	height: 3rem;
	margin-top: 1rem;
}

#content .content03 .present-list dd {
	height: 20rem;
}

#content .content03 .present-list .present00 {
	height: 0;
	padding-top: 24rem;
	background-position: center center;
}

#content .content03 .present-list dd img {
	width: auto;
	height: 10rem;
}

#content .content03 .get03 {
	padding-top: 20%;
	background-size: 94%;
	background-position: center center;
	margin-bottom: 8rem;
}

#content .content04 {
	padding-bottom: 40%;
	background-image: url(images/item04_back.png);
	background-size: 220%;
	background-repeat: no-repeat;
	background-position: right bottom -12rem;
}

#content .content04 h2 {
	margin-top: 2rem;
	font-size: 2.8rem;
}

#content .content04 .entry-text {
	width: 94%;
	margin: 1rem auto;
	padding: 0;
}

#content .content04 .entry-list {
	width: 100%;
	margin: 2rem auto;
}

#content .content04 .entry-list .entry-box {
	width: 94%;
	height: auto;
	margin: 0 auto;
	margin-bottom: 2rem;
	padding-bottom: 10%;
	float: none;
	background-position: right 1rem bottom 1rem;
	background-size: auto 50%;
}

#content .content04 .entry-box dt {
	font-size: 2.2rem;
}

#content .content04 .entry-box dd {
	width: 60%;
}

#content .content04 .entry {
	width: 100%;
	height: auto;
	overflow: hidden;
}

#content .content04 .entry h3 {
	width: 80%;
	margin: 0 auto;
	background-size: 100% auto;
}

#content .content04 .entry .entry-button-box a {
	width: 94%;
	font-size: 2.3rem;
	padding: 2rem 0;
	border-radius: 1.5rem;
	margin-top: 3rem;
}

/* ---------- content04 ---------- */

#content .content04 {
	min-height: 0;
}

/* ---------- footer ---------- */

#footer .footer-box {
	width: 94%;
	height: auto;
	overflow: hidden;
	margin: 0 auto;
}

#footer .footer-logo {
	width: 100%;
}

#footer .footer-text {
	width: 80%;
	top: 1rem;
	left: 18%;
	font-size: 1.2rem;
	font-weight: bold;
}

#footer .footer-logo .logo-box {
	width: 100%;
	height: auto;
	padding-top: 1rem;
}

#footer .footer-logo .logo-box a {
	display: block;
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 17%;
	margin-top: 3%;
	background-image: url(images/header_logo_m.jpg);
	background-size: 100% auto;
	background-repeat: no-repeat;
}

#footer .footer-tel {
	width: 100%;
	height: auto;
	text-align: center;
}

/* ---------- copyright ---------- */

#copyright {
	width: 100%;
	font-size: 1rem;
}

/* ---------- pageTop ボタン ---------- */

#pageTop {
	bottom: 1rem;
	right: 1rem;
}

#content .category-item {
	width: 48%;
	margin-left: 0;
	margin-bottom: 8%;
}

#content .category02,
#content .category04,
#content .category06,
#content .category08 {
	margin-left: 4%;
}

/* ---------- スマホ用ここまで ---------- */

}





