    @charset "utf-8";
    .clearfix::after {
    	display: block;
    	clear: both;
    	content: "";
    }

    .bg_skyblue {
    	background: #a0d8f9;
    }

    .yellow {
    	color: #d2a407;
    }

    .red {
    	color: #e91a41;
    }

    .mk_yellow {
    	background: linear-gradient(transparent 60%, rgb(255, 240, 0, 0.5) 60%);
    }

    .mk_red {
    	background: linear-gradient(transparent 60%, rgb(233, 26, 65, 0.2) 60%);
    }

    .bold {
    	font-weight: bold;
    }

    body {
    	background: url(../images/bg_water.png)repeat;
    	background-position: top center;
    	background-size: auto;
    	background-attachment: fixed;
    	font-size: 10px;
    	font-feature-settings: "palt";
    }

    a {
    	color: #fff;
    	text-decoration: none;
    	font-weight: bold;
    	transition: 0.3s ease all;
    }

    .sp {
    	display: none;
    }

    .flex {
    	display: flex;
    }

    .flex.eq {
    	justify-content: space-between;
    	flex-flow: wrap;
    }

    .flex.center {
    	align-items: center;
    }

    section.content_frames {
    	width: 100%;
    	text-align: center;
    }

    .inner {
    	width: 1080px;
    	display: block;
    	margin: 0 auto;
    	text-align: center;
    }

    /* =============
#fv
============= */

    #fv {
    	background: url(../images/bg_fv.jpg) no-repeat;
    	background-position: top center;
    	background-size: cover;
    }

    /* =============
#nav
============= */

    #nav ul {
    	padding: 20px 0;
    	box-sizing: border-box;
    	display: flex;
    }

    #nav ul li {
    	width: 245px;
    	height: 80px;
    	display: inline-block;
    }

    #nav ul li:not(:first-of-type) {
    	margin-left: 30px;
    }

    #nav ul li a {
    	font-size: 2.2em;
    	line-height: 1.36em;
    	min-height: 80px;
    	display: block;
    	background: #239be1;
    	border-radius: 10px;
    	padding: 10px;
    	box-sizing: border-box;
    }

    #nav ul li a:hover {
    	background: #fff;
    	color: #239be1;
    }


    #nav ul li:first-of-type a {
    	line-height: 60px;
    }


    /* =============
#item_main
============= */

    #item_main {
    	background: url(../images/bg_item_main.jpg) no-repeat;
    	background-position: top center;
    	background-size: cover;
    }

    #item_main .inner {
    	position: relative;
    }

    #item_main .inner .btn.orange {
    	position: absolute;
    	bottom: 95px;
    	right: 50px;
    	margin: 0 auto;
    }

    /* .btn[共通] */

    .btn {
    	border-radius: 100px;
    	margin: 50px auto;
    	display: block;
    	width: 100%;
    }

    .btn a {
    	width: 300px;
    	border-radius: 100px;
    	font-size: 3em;
    	line-height: 1em;
    	background: #292929;
    	text-align: center;
    	padding: 15px;
    	box-sizing: border-box;
    	box-shadow: 0 2px 3px 2px rgb(0, 0, 0, 0.1);
    }

    .btn a:hover {
    	box-shadow: 0 2px 3px 2px rgb(0, 0, 0, 0.5);
    }

    .btn.orange a {
    	background: linear-gradient(49deg, #f7ba38, #ffae00);
    }

    .btn.orange.arrow a {
    	padding: 15px 15px 15px 45px;
    	background: url(../images/icon_arrow.png), linear-gradient(49deg, #f7ba38, #ffae00);
    	background-repeat: no-repeat, repeat;
    	background-position: top 10px left 10px;
    }

    /* fluffy ani */

    .fluffy {
    	animation: fluffy 3s ease infinite;
    }

    @keyframes fluffy {
    	0% {
    		transform: translateY(0)
    	}
    	5% {
    		transform: translateY(0)
    	}
    	10% {
    		transform: translateY(0)
    	}
    	20% {
    		transform: translateY(-15px)
    	}
    	25% {
    		transform: translateY(0)
    	}
    	30% {
    		transform: translateY(-15px)
    	}
    	50% {
    		transform: translateY(0)
    	}
    	100% {
    		transform: translateY(0)
    	}
    }


    /* =============
#voice
============= */

    #voice {
    	background: url(../images/bg_doted.jpg) repeat;
    	background-position: top center;
    	background-size: cover;
    }

    #voice .inner h2 {
    	margin-bottom: 25px;
    }

    #voice .inner .frame {
    	background: #fff;
    	padding: 30px;
    	box-sizing: border-box;
    	height: 300px;
    	overflow-y: scroll;
    }

    #voice .inner .frame .box {
    	border-bottom: 5px dotted #9fd8f9;
    	box-sizing: border-box;
    }

    #voice .inner .frame .box:not(:first-of-type) {
    	margin-top: 30px;
    }

    #voice .inner .frame .box:last-of-type {
    	border: none;
    }

    #voice .inner .frame .users {
    	font-weight: bold;
    	font-size: 2em;
    	text-align: left;
    	margin-bottom: 1em;
    }

    #voice .inner .frame .users .yellow {
    	margin-left: 1em;
    }

    #voice .inner .frame .voices {
    	font-weight: normal;
    	font-size: 1.8em;
    	line-height: 1.8em;
    	text-align: left;
    }

    /* 100歳　クチコミ */

    #voice_02 {
    	padding-bottom: 50px;
    	box-sizing: border-box;
    }

    #voice_02 .btn {
    	margin-bottom: 0;
    }


    .caption {
    	font-weight: normal;
    	font-size: 1.4em;
    	line-height: 2.1em;
    	color: #a4a4a4;
    	text-align: right;
    	margin: 10px auto 5px;
    }

    /* =============
column
============= */

    #title_column {
    	background: url(../images/bg_water.jpg) repeat;
    	background-position: top center;
    	background-size: cover;
    }

    #column_menu ul {
    	display: flex;
    	flex-flow: row wrap;
    	margin: 50px auto;
    }

    #column_menu ul li {
    	width: 327px;
    	margin-left: 49px;
    }

    #column_menu ul li:first-of-type,
    #column_menu ul li:nth-of-type(4) {
    	margin-left: 0;
    }

    #column_menu ul li:nth-of-type(n+4) {
    	margin-top: 30px;
    }

    #column_menu ul li a:hover {
    	opacity: 0.8;
    }

    #column_menu ul li a p {
    	font-size: 1.6em;
    	line-height: 1.2em;
    	color: #292929;
    	font-weight: normal;
    	text-align: left;
    	margin-top: 1.2em;
    }


    #bnr {
    	background: url(../images/bg_bnr.jpg) repeat;
    	background-position: top center;
    	background-size: cover;
    }

    #bnr a:hover {
    	opacity: 0.8;
    }

    /* =============
.sub_pages#column
============= */

    .sub_pages#column article section section:not(:last-of-type) {
    	margin: 50px auto;
    }

    /* =============
#footer
============= */

    #footer {
    	background: #e1e1e1;
    	padding: 20px 0;
    	box-sizing: border-box;
    }

    #footer .inner p a,
    #footer .inner small {
    	font-size: 1.2em;
    	line-height: 1.8em;
    	color: #292929;
    	font-weight: normal;
    }

    #footer .inner p a:hover {
    	text-decoration: underline;
    }


    /* =============
.sub_pages
============= */

    .sub_pages {
    	display: block;
    	margin: 50px auto;
    }

    .sub_pages .inner {
    	background: #fff;
    	display: block;
    	box-shadow: 0 2px 3px 2px rgb(0, 0, 0, 0.2);
    	padding: 50px;
    	box-sizing: border-box;
    }

    .sub_pages .inner h2,
    .sub_pages .inner h3 {
    	font-weight: bold;
    	text-align: left;
    	font-size: 3em;
    	line-height: 1.8em;
    	margin-bottom: 1.5em;
    }

    .sub_pages .inner h2 {
    	background: #239be1;
    	color: #fff;
    	padding: 10px 20px;
    	box-sizing: border-box;
    	border-radius: 10px;
    }

    .sub_pages .inner h3 {
    	font-size: 2.4em;
    	margin-bottom: 0.5em;
    	color: #239be1;
    	position: relative;
    	padding-left: 1em;
    	box-sizing: border-box;
    	z-index: 1;
    }

    .sub_pages .inner h3:before {
    	position: absolute;
    	top: 0;
    	left: 0;
    	content: "";
    	background: rgb(255, 240, 0, 0.3);
    	border-radius: 100px;
    	width: 40px;
    	height: 40px;
    	z-index: -1;
    }

    .sub_pages .inner h4 {
    	font-size: 2em;
    	text-align: left;
    	margin: 1em 0 1em;
    	color: #18afbc;
    }

    .sub_pages .inner figure {
    	margin: 30px auto;
    }

    .sub_pages .inner figure img {
    	width: 100%;
    }

    .sub_pages .inner p,
    .sub_pages .inner table {
    	font-size: 1.8em;
    	line-height: 2em;
    	text-align: left;
    }

    .sub_pages .inner section:not(:first-of-type) {
    	margin: 30px auto;
    }

    .sub_pages .inner table {
    	display: table;
    	width: 100%;
    	vertical-align: middle;
    	text-align: left;
    	color: #292929;
    }

    .sub_pages .inner table tr:nth-of-type(odd) {
    	background: #eee;
    }

    .sub_pages .inner table tr th,
    .sub_pages .inner table tr td {
    	padding: 10px;
    	box-sizing: border-box;
    }

    .sub_pages .inner table tr th {
    	vertical-align: top;
    	width: 300px;
    }

    .sub_pages a {
    	color: cornflowerblue;
    	text-decoration: underline;
    }

    .sub_pages a:hover {
    	color: #e91a41;
    	text-decoration: none;
    }

    /* =============
another [imgs]
============= */

    #shirica {
    	background: url(../images/bg_shirica.jpg) no-repeat;
    	background-position: top center;
    	background-size: cover;
    }

    #shirica_info {
    	background: url(../images/bg_shirica_info.jpg) no-repeat;
    	background-position: top center;
    	background-size: cover;
    }

    #title_osusume {
    	background: url(../images/bg_title_osusume.jpg) no-repeat;
    	background-position: top center;
    	background-size: cover;
    	background-attachment: fixed;
    }

    #title_item {
    	background: url(../images/bg_title_item.jpg) no-repeat;
    	background-position: top center;
    	background-size: cover;
    }

    #item_sub {
    	background: url(../images/bg_item_sub.jpg) no-repeat;
    	background-position: top center;
    	background-size: cover;
    }

    #table_title {
    	background: url(../images/bg_table_title.jpg) no-repeat;
    	background-position: top center;
    	background-size: cover;
    }




    /*スマホ
------------------------------*/

    @media screen and (max-width: 750px) {
    	.pc {
    		display: none;
    	}
    	.sp {
    		display: block;
    	}

    	.flex.sp_block {
    		display: block;
    	}

    	section.content_frames {
    		width: 100%;
    		text-align: center;
    	}

    	.inner {
    		width: 100%;
    		display: block;
    		margin: 0 auto;
    	}

    	/* =============
#fv
============= */
    	#fv {
    		background: none;
    	}

    	/* =============
#nav
============= */
    	#nav ul {
    		padding: 15px;
    	}

    	#nav ul li {
    		width: 48%;
    		height: 50px;
    	}

    	#nav ul li:not(:first-of-type) {
    		margin-left: 3%;
    	}
    	#nav ul li:nth-of-type(3) {
    		margin-left: 0;
    	}
    	#nav ul li:nth-of-type(n+3) {
    		margin-top: 1.5em;
    	}
    	#nav ul li:first-of-type a {
    		line-height: 2.7em;
    	}

    	#nav ul li a {
    		font-size: 1.5em;
    		line-height: 1.36em;
    		min-height: 50px;
    		padding: 5px;
    	}

    	#nav ul li a:hover {
    		background: #239be1;
    		color: #fff;
    	}

    	/* =============
#item_main
============= */
    	#item_main .inner {
    		position: static;
    	}

    	#item_main .inner .btn.orange {
    		position: static;
    		margin: 30px auto;
    	}

    	/* .btn[共通] */
    	.btn {
    		margin: 30px auto;
    	}

    	.btn a {
    		width: 80%;
    		font-size: 2.4em;
    	}
    	.btn.orange.arrow a {
    		padding: 3.5% 3.5% 3.5% 10%;
    		background: url(../images/icon_arrow.png), linear-gradient(49deg, #f7ba38, #ffae00);
    		background-repeat: no-repeat, repeat;
    		background-position: top 9px left 10px;
    		background-size: 10%, auto;
    	}


    	/* =============
#table
============= */
    	#table .sp p {
    		font-size: 1.5em;
    		text-align: left;
    		padding: 0 1em;
    		box-sizing: border-box;
    		margin: 10px auto;
    	}
    	#table .sp .scroll_x {
    		width: 100%;
    		height: auto;
    		overflow-x: scroll;
    	}

    	#table .sp .scroll_x figure {
    		width: 750px;
    		height: auto;
    	}

    	/* =============
#voice
============= */
    	#voice {
    		padding: 15px;
    		box-sizing: border-box;
    	}

    	#voice .inner h2 {
    		margin-bottom: 15px;
    	}

    	#voice .inner .frame {
    		padding: 15px;
    	}

    	#voice .inner .frame .box {
    		border-bottom: 2px dotted #9fd8f9;
    	}

    	#voice .inner .frame .box:not(:first-of-type) {
    		margin-top: 15px;
    	}
    	#voice .inner .frame .users {
    		font-size: 1.8em;
    		margin-bottom: 15px;
    	}

    	#voice .inner .frame .users .yellow {
    		margin-left: 15px;
    	}

    	#voice .inner .frame .voices {
    		font-size: 1.5em;
    	}
    	/* 100歳　クチコミ */
    	#voice_02 {
    		padding-bottom: 20px;
    	}

    	.caption {
    		font-size: 1.5em;
    		line-height: 1.8em;
    		margin: 10px auto;
    		text-align: left;
    	}

    	/* =============
column
============= */
    	#column_menu ul {
    		margin: 0 auto;
    		padding: 15px;
    		box-sizing: border-box;
    	}

    	#column_menu ul li {
    		width: 47%;
    		margin: 0 0 15px 0;
    	}
    	#column_menu ul li:nth-of-type(even) {
    		margin-left: 5%;
    	}

    	#column_menu ul li:nth-of-type(n+4) {
    		margin-top: 0;
    	}

    	#column_menu ul li a:hover {
    		opacity: 1;
    	}

    	#column_menu ul li a p {
    		font-size: 1.5em;
    		line-height: 1.2em;
    	}
    	#bnr a:hover {
    		opacity: 1;
    	}

    	/* =============
#footer
============= */
    	#footer {
    		background: #e1e1e1;
    		padding: 15px;
    	}

    	#footer .inner p a,
    	#footer .inner small {
    		font-size: 1em;
    		line-height: 1.8em;
    	}

    	#footer .inner p a {
    		text-decoration: underline;
    	}
    	#footer .inner p a:hover {
    		text-decoration: none;
    	}

    	/* =============
.sub_pages
============= */
    	.sub_pages {
    		margin: 0 auto;
    	}

    	.sub_pages .inner {
    		padding: 15px;
    	}

    	.sub_pages .inner h2,
    	.sub_pages .inner h3 {
    		font-size: 2.4em;
    		margin-bottom: 1em;
    	}

    	.sub_pages .inner h2 {
    		padding: 15px;
    	}

    	.sub_pages .inner h3 {
    		font-size: 1.8em;
    	}
    	.sub_pages .inner h3:before {
    		top: -15%;
    	}

    	.sub_pages .inner figure {
    		margin: 15px auto;
    	}

    	.sub_pages .inner p,
    	.sub_pages .inner table {
    		font-size: 1.5em;
    		line-height: 1.8em;
    	}

    	.sub_pages .inner section:not(:first-of-type) {
    		margin: 30px auto;
    	}

    	.sub_pages .inner table,
    	.sub_pages .inner table tbody,
    	.sub_pages .inner table tbody tr {
    		display: block;
    		width: 100%;
    	}

    	.sub_pages .inner table tr th,
    	.sub_pages .inner table tr td {
    		width: 100%;
    		display: block;
    		text-align: center;
    	}
    	.sub_pages .inner table tr th {
    		font-weight: bold;
    	}
    	#company.sub_pages .inner table:last-of-type tr:nth-of-type(2) td,
    	#company.sub_pages .inner table:last-of-type tr:nth-of-type(3) td {
    		text-align: left;
    	}

    	/* =============
another [imgs]
============= */
    	#shirica,
    	#shirica_info,
    	#title_item,
    	#item_sub {
    		background: none;
    	}
    	#title_osusume {
    		background: url(../images/bg_title_osusume_sp.jpg) no-repeat;
    		background-position: top center;
    		background-size: cover;
    		background-attachment: fixed;
    	}

    	/* // //End @media screen and (max-width: 750px) */
    }
