@charset "UTF-8";
body {
	margin: 0;
	font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    overflow: hidden;
}

.contents {
	transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* :::::: layout :::::: */

ul{
	margin:0;
	padding: 0;
	list-style: none;
}

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

a:hover,
a:active{
	text-decoration: none;
    opacity: .7;
}


.wrapper{
	position: relative;
}

.container{
    scroll-behavior: smooth;
    position: relative;
    max-width: 1100px;
    margin: 0 auto;
    inset: 0;
}

/* :::::: toggle button :::::: */
#drawer {
	display: none;
}
label {
	cursor: pointer;
	position: fixed;
}
.open {
	z-index: 999;
	top: 8px;
	right: 8px;
	width: 48px;
	height: 48px;
	border-radius: 48px;
	background: #053993;
	transition: background .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before,
.open::after {
	content: "";
}
.open span,
.open::before,
.open::after {
	content: "";
	position: absolute;
	top: calc(50% - 1px);
	left: 30%;
	width: 40%;
	border-bottom: 1px solid white;
	transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before {
	transform: translateY(-8px);
}
.open::after {
	transform: translateY(8px);
}
.close {
	z-index: 3;
	inset: 0;
	pointer-events: none;
	transition: background .6s;
}
#drawer:checked + .open {
	background: none;
}
#drawer:checked + .open span {
	transform: scaleX(0);
}
#drawer:checked + .open::before {
	transform: rotate(135deg) scaleX(1.2);
}
#drawer:checked + .open::after {
	transform: rotate(-135deg) scaleX(1.2);
}
#drawer:checked ~ .close {
	pointer-events: auto;
	background: rgba(0,0,0,.3);
}

/* :::::: drawer menu :::::: */
.menu {
	z-index: 4;
	position: fixed;
	overflow: auto;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 10px;
	box-sizing: border-box;
	background: rgba(0,0,0,.9);
	transform: translateX(100%);
	transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.menu h2 {
	color: white;
	font-family: "Ubuntu Condensed", sans-serif;
	font-weight: 400;
	letter-spacing: .1em;
	text-align: center;
}
.menu ul {
	margin: 0;
	padding: 0;
}
.menu li {
	line-height: 1.4;
}
.menu li:not(:first-child) {
	border-top: 1px solid rgba(255,255,255,.6);
}
li.mt {
    border-top: 1px solid rgba(255,255,255,.6);
}
li.mb {
    border-bottom: 1px solid rgba(255,255,255,.6);
}
.menu a {
	display: block;
	padding: 1em 2em;
	color: white;
	text-decoration: inherit;
	transition: background .6s;
}
.menu a:hover {
	background: black;
}
#drawer:checked ~ .menu {
	transform: none;
}
ul.spopen_menusns {
    display: flex;
    align-items: center;
    margin-top: 60px!important;
    justify-content: center;
    margin-bottom: 60px;
}
.spopen_menusns li {
    border: none!important;
}
.snslink{
    padding: .5em 1em!important;
}
/* :::::: header, footer :::::: */
.link_w{
    color: #fff;
    text-decoration: none;
}
header {
    
}
.head_container{
    scroll-behavior: smooth;
    position: relative;
    max-width: 1100px;
    margin: 0 auto;
    height: 96px;
}
.head_pc {
    position: absolute;
    top: 0;
    z-index: 999;
    width: 100%;
    background-color: rgba(255,255,255,0.7);
}
img.logo {
    width: 720px;
    padding: 1em 1em;
}
.menu_area {
    background-color: #16378e;
}
.menu_items {
    display: flex;
    max-width: 1100px;
    justify-content: space-evenly;
    margin: 0 auto;
    align-items: center;
    height: 2.5em;
}
.menu_item {
    white-space: nowrap;
}
a.pc_menulink {
    color: #fff;
    text-decoration: none;
}

.sp{
    display: none;
}
.head_sp {
    display: none;
}
footer {
    background: #2d4092;
    padding: 1.5em;
    text-align: center;
    margin-top: 2em;
}
.pc_links {
    display: flex;
    margin: 0 auto;
    justify-content: center;
    margin-bottom: 1em;
}
ul.pc_link {
    color: #fff;
    padding: 0 0.5em;
}
.copyright {
    margin: 0.8em auto;
    color: #fff;
    font-family: "Noto Sans JP", sans-serif;
    font-size: .9em;
}
@media screen and (max-width:740px) {
.head_pc{
    display: none;
}
.head_pcpage{
    display: none;
}
.head_sp{
    display: block;
}
.sp{
    display: block;
}
.head_sp {
    background-color: #053993;
    height: 58px;
    width: 100%;
    padding-top: 10px;
    padding-left: 8px;
}

img.logosp {
    width: calc(100% - 65px);
    max-height: 50px;
    top: 0.5em;
    left: 0.5em;
    position: absolute;
}
ul.spopen_menulist {
    margin-top: 80px!important;
    text-align: center;
}
footer {
    background: #2d4092;
    padding: 1.5em;
    text-align: center;
    margin-top: 2em;
}
.pc_links {
    display: none;
}
.copyright {
    font-size: .8em;
}

/* :::::: main :::::: */
main {
	padding: 0;
}
main h1 {
	width: 7em;
	height: 7em;
	margin: 0 auto;
	font-size: 1em;
	line-height: 7em;
	font-weight: normal;
	text-align: center;
	background: rgba(0,0,0,.05);
	border-radius: 50%;
}
section {
	max-width: 647px;
	margin: 0 auto;
	padding-top: 24px;
	text-align: right;
}
section + section {
	margin-top: 80px;
}
section h2,
section p {
	margin: 0;
	text-align: left;
}
figure {
	position: relative;
	margin: 1em 0 0;
	text-align: left;
}
figure img {
	max-width: 100%;
	height: auto;
	padding: 5px;
	box-sizing: border-box;
	border-radius: 32px;
	vertical-align: middle;
	background: rgba(255,255,255,.6);
}
section p {
	margin-top: 1em;
}
section .btn {
	display: inline-grid;
	place-items: center;
	width: 240px;
	height: 48px;
	margin-top: 1em;
	padding-bottom: .1em;
	border-radius: 16px;
	color: white;
	line-height: 1;
	background: #86c0de;
	text-decoration: inherit;
	transition: background .3s;
}
section .btn:hover {
	background: #dc6688;
}

