@charset "UTF-8";

/*	reset
=-=-=-------------------=-=-=*/
html {
	overflow-x : auto;
	overflow-y : scroll;
	font-size  : 16px;
}

* {
	-webkit-box-sizing : border-box;
	-moz-box-sizing    : border-box;
	-o-box-sizing      : border-box;
	-ms-box-sizing     : border-box;
	box-sizing         : border-box;
}

h1, h2, h3, h4, h5, h6, p, ul, ol, li, div, dl, dt, dd, form, img, hr, table, tr, td, br {
	margin     : 0;
	padding    : 0;
	border     : none;
	font-style : normal;
}

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

address {
	font-style : normal;
}

ul {
	list-style : none;
	border     : 1px #0071ba dashed;
	margin     : 5px 10px;
	padding    : 5px 0;
}

li {
	 padding-left : 10px;
}


img {
	height : auto;
}

a {
	text-decoration : none;
	color: #ffffff;
}

a:visited {
	text-decoration : none;
	color           : #ffffff;
}

/*	body
=-=-=-------------------=-=-=*/
body {
	width                    : 100%;
	min-width                : 100%;
	overflow                 : hidden;

	color                    : #0a0a0a;
	font-size                : .8rem;
	font-family              : 'Noto Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height              : 1.8;
	letter-spacing           : 0.04em;

	background               : #3fa7ff;
	-webkit-text-size-adjust : 100%;
	word-break               : break-all;

	margin                   : 0 auto;
	padding                  : 0;
}

/*	fonts
=-=-=-------------------=-=-=*/

.font-caption {
	font-family : 'Kosugi Maru', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.font_black {
	font-weight : 900;
}

.font_red {
	color : #ff0000;
}

.font_large {
	font-size : large;
}

.font_small {
	font-size : small;
}

/*	clear
=-=-=-------------------=-=-=*/
.clear {
	height      : 0;
	font-size   : 0;
	line-height : 0;
	margin      : 0;
	padding     : 0;
	clear       : both;
}

.clearfix:after {
	height     : 0;
	content    : ".";
	display    : block;
	visibility : hidden;
	clear      : both;
}

.clearfix {
	display : inline-block;
}

/* Hides from IE-mac */
* html .clearfix {
	zoom : 1;
}

.clearfix {
	display : block;
}

/* End hide from IE-mac */

/*=================================================
	div
=================================================*/

.bg_box {
	height   : 100%;
	position : absolute;
	width    : 100%;
	z-index  : -1;
}

.bg_header {
	background : #0071e3;
	height     : 60px;
}

.bg_top {
	background : #ffffff;
	height     : 500px;
}

.main {
	margin              : 0 auto;
	max-width           : 1100px;
	background-image    : url("../img/alice_0908.png");
	background-position : right -80px;
	background-size     : auto 950px;
	background-repeat   : no-repeat;
}

@media screen and (max-width: 999px) {
	.main {
		background-position : 110% -80px;
	}
}

@media screen and (max-width: 899px) {
	.main {
		background-position : 150% -80px;
	}
}

@media screen and (max-width: 829px) {
	.main {
		background-position : 190% -80px;
	}
}

@media screen and (max-width: 759px) {
	.main {
		background-position : 130% -60px;
		background-size     : 70%;
	}
}

@media screen and (max-width: 599px) {
	.main {
		background-position : 140% 0;
		background-size     : 65%;
	}
}

.main_box {
	margin    : 0 auto;
	max-width : 800px;
}

.header_text {
	color     : #ffffff;
	display   : inline-block;
	font-size : .9rem;
	height    : 40px;
	margin    : 2px auto 15px auto;
	padding   : 12px 10px;
	width     : 320px;
}

.header_icon {
	display : inline-block;
	float   : right;
	margin  : 0 5px;
}

@media screen and (max-width: 469px) {
	.header_icon {
		display : block;
		float   : none;
	}
}

.collaboration_logo {
	margin    : 0 10px;
	max-width : 400px;
	padding   : 10px 0 0 0;
}

.logo {
	margin    : 0 10px;
	max-width : 400px;
	padding   : 10px 0 0 0;
}

@media screen and (max-width: 599px) {
	.collaboration_logo {
		max-width : 65%;
	}
	
	.logo {
		max-width : 70%;
	}
}

.about {
	color     : #0071ba;
	font-size : 1.7rem;
	margin    : 0 10px;
	padding   : 30px 0 5px 0;
	width     : 490px;
}

.about_text {
	background-color : #ffffff;
	border           : solid 2px #0071ba;
	border-radius    : 10px;
	margin           : 0 10px;
	max-width        : 490px;
	padding          : 20px 15px;
}

.menu {
	background-color : #0071e3;
	border           : solid 2px #ffffff;
	border-radius    : 50px;
	color            : #ffffff;
	font-size        : 1rem;
	margin           : 20px 10px 40px 10px;
	padding          : 10px 20px;
	text-align       : center;
}

.menu_button {
	display : inline-block;
	width   : 100px;
}

.menu_button a {
	color   : #ffffff;
	display : block;
	width   : 100%;
}

.menu_button_break {
	display : inline-block;
	padding : 0 1px;
}

.logo-white {
	padding   : 20px 10px 0 10px;
	margin    : 0 auto;
	max-width : 300px;
}

.item_name {
	color      : #ffffff;
	padding    : 20px 0 20px 0px;
	text-align : center;
}

.item_name_main {
	font-size   : 2.8rem;
	line-height : 1.5;
}

.item_name_sub {
	font-size   : 1.1rem;
	line-height : 1.3;
}

.underline {
	border-bottom  : 10px solid #ffffff;
	padding-bottom : 5px;
}

.feature_box {
	margin  : 0 auto;
	position: relative;
	width   : 100%;
}

.feature {
	margin    : 0 auto;
	max-width : 800px;
	width     : 100%;
}

.feature_main {
	background-color : #ffffff;
	border           : solid 2px #0071ba;
	border-radius    : 10px;
	margin           : 10px;
	width            : auto;
}

.feature_pic {
	display        : inline-block;
	margin         : 0 2px 0 30px ;
	vertical-align : top;
}

.feature_text {
	display        : inline-block;
	margin         : 10px 5px ;
	vertical-align : top;
}

.feature_caption {
	color     : #0071ba;
	font-size : 1.25rem;
	margin    : 10px 0 10px 0 ;
}

.feature_details {
	margin : 10px 0 10px 0 ;
}

.feature_sign {
	color      : #000000;
	font-size  : 3rem;
	left       : 125px;
	position   : absolute;
	text-align : left;
	top        : 55px;
}

.feature_number {
	color            : #ffffff;
	background-color : #0071e3;
	border           : solid 2px #ffffff;
	border-radius    : 50%;
	font-size        : 2.4rem;
	height           : 70px;
	text-align       : center;
	width            : 70px;
}

@media screen and (max-width: 1099px) {
	.feature_main {
		margin : 70px 10px 10px 10px;
		width  : auto;
	}
	
	.feature_sign {
		margin   : 0 auto;
		position : static;
		top      : -50px;
		width    : 70px;
	}
	
	.feature_number {
		position : absolute;
		top      : -50px;
	}
}

@media screen and (max-width: 799px) {
	.feature_pic {
		display    : block;
		margin     : 20px 0 0 0 ;
		text-align : center;
	}
	
	.feature_text {
		display : block;
		margin  : 0 20px 20px 20px;
		width   : auto;
	}
	
	.feature_caption {
		line-height : 1.2;
		margin      : 0;
		text-align  : center;
		width       : 100%;
	}
	
	.feature_details {
		margin : 10px;
		width  : auto;
	}
}

.plan_summary {
	border  : solid 1px #ffffff;
	color   : #ffffff;
	font-size : .9rem;
	margin  : 10px;
	padding : 10px 15px;
}

.plan_privilege {
	color   : #ffffff;
	margin  : 8px;
	padding : 10px 1px;
}

.emphasize {
	color     : #ffff00;
	font-size : 1.16rem;
}

.plan_box {
	text-align : center;
	width      : auto;
}

.plan_contents {
	background-color : #ffffff;
	border           : solid 3px #0071ba;
	display          : inline-block;
	margin           : 10px 0;
	text-align       : left;
	vertical-align   : top;
	width            : 245px;
}

.plan_contents_head_01 {
	background-color : #dae7f6;
	height           : 7px;
	width            : 100%;
}

.plan_contents_head_02 {
	background-color : #b2dcfa;
	height           : 7px;
	width            : 100%;
}

.plan_contents_head_03 {
	background-color : #3fa7ff;
	height           : 7px;
	width            : 100%;
}

.plan_contents_head_04 {
	background-color : #0071e3;
	height           : 7px;
	width            : 100%;
}

.plan_contents_text {
	background-color : #ffffff;
	padding          : 10px 13px;
	width            : 100%;
}

.plan_contents_caption {
	color     : #0071ba;
	font-size : 1.3rem;
	margin    : 10px 0 10px 0px ;
}

.plan_contents_fee {
	text-align : center;
}

.plan_contents_amount {
	font-size      : 1.40rem;
	letter-spacing : -0.03em;
}

.plan_contents_member_price {
	line-height : 1.6em;
}

.plan_contents_summary {
	height : 115px;
}

.plan_supplement {
	color   : #ffffff;
	margin  : 10px 12px;
	padding : 5px 1px;
}

@media screen and (max-width: 999px) {
	.plan_contents {
		margin : 15px 20px;
		width  : 290px;
	}
	
	.plan_contents_text {
		padding : 10px 18px;
	}
	
	.plan_contents_summary {
		height: 95px;
	}
}

.subscription_button {
	color            : #000000;
	background-color : #ffff66;
	border-radius    : 50px;
	box-shadow       : 3px 3px #0071ba;
	font-size        : 1.8rem;
	margin           : 15px 10px 5px 10px;
	padding          : 5px;
	text-align       : center;
	
	box-sizing         : border-box;
	-webkit-box-sizing : border-box;
	-moz-box-sizing    : border-box;
	transition         : all .3s;
	-webkit-transition : all .3s;
}

.subscription_button a {
	color   : #0071e3;
	display : block;
	width   : 100%;
}
.subscription_button a:vizited {
	color : #0071e3;
}

.subscription_button:hover {
	background-color: #ff97c2;
	letter-spacing: 3px;
}

.greeting_text {
	background-color : #ffffff;
	border           : solid 2px #0071ba;
	border-radius    : 5px;
	margin           : 10px 10px 20px 10px;
	padding          : 30px 35px;
}

.profile_text {
	background-color : #ffffff;
	border           : solid 2px #0071ba;
	border-radius    : 5px;
	margin           : 10px 10px 20px 10px;
	padding          : 20px 35px;
}

.profile_name {
	color     : #0071ba;
	font-size : 1.3rem;
}

.corporation_attention {
	margin     : 0 10px;
	text-align : center;
}

.corporation_banner_box {
	color       : #ffffff;
	font-size   : 1.3rem;
	line-height : 1.3;
	text-align  : center;
}

.corporation_banner_operation {
	margin : 10px 5px;
}

.corporation_banner_list {
	margin     : 10px 8px;
	text-align : left;
}

@media screen and (max-width: 799px) {
	.corporation_banner_list {
		margin    : 10px auto;
		max-width : 520px;
	}
}

@media screen and (max-width: 529px) {
	.corporation_banner_list {
		margin    : 10px auto;
		max-width : 254px;
	}
}

footer {
	background-color : #0071e3;
	width            : 100%;
}

.footer_box {
	text-align : center;
	margin     : 0 auto;
	max-width  : 800px;
}

.footer_item {
	display        : inline-block;
	vertical-align : top;
}

.footer_item_name {
	color       : #ffffff;
	font-size   : 2rem;
	line-height : 1.1;
	padding     : 30px 10px 0 10px;
}

.footer_item_text {
	color   : #ffffff;
	padding : 20px 10px 0 10px;
}

.footer_inquiry {
	color          : #ffffff;
	display        : inline-block;
	line-height    : 1.6;
	padding        : 30px 0 20px 20px;
	text-align     : left;
	vertical-align : top;
}

.footer_producedby {
	color  : #ffffff;
	margin : 10px 0 0 0;
}

/*=================================================
	img
=================================================*/

.logo-100 {
	width : 100%;
}

.footer-logo {
	max-width : 220px;
}

.plan_contents_set {
	max-width : 100%;
}

.corporation_banner {
	background-color : #ffffff;
	border           : solid 1px #0071ba;
	margin           : 2px 3px;
	max-width        : 250px;
}

.sns_icon {
	height : 36px;
	margin : 7px 2px 7px 0;
}

.plan_contents_hr{
	border-top : 1px solid #a9a9a9;
	margin     : 12px 0;
}
