@charset "UTF-8";
/* ===================================
	File Name   : common.css
	Description : Base Layout CSS
	Editor      : Bface Chiba
	Last Editor : Bface Chiba
	
	Update Description :
	[2021/02/04] 新規作成
====================================== */

/*========== Style Contents ==========

	1. Global Redefinition
	2. Font Redefinition
	3. Base Box Setting
	4. Common Items Setting
		- Basic Link
	 	- Header Items
		- Global Navigation
	 	- Footer Items

====================================== */



/*===== 1. Global Redefinition =====*/
body {
  background: #fff;
	color: #333333;
	line-height: 1.4;
  margin: 0 auto;
}

dt,li,strong,em,span { line-height: 1.2;}

img {width: 100%;}

sup {
  font-size: 1.0rem;
  vertical-align: text-top;
}

sub {
  font-size: 1.4rem;
  vertical-align: text-bottom;
}


figure img { display: block;}

time { font-family: Poppins, 'Noto Sans JP', sans-serif;}

hr {
  margin: 0;
  border: none;
  border-bottom: 1rem solid #ccc;
  background: none;
}


@media (max-width: 768px) {
  figure svg {
    display: block;
    width: 100%;
    height: auto
  }
}



/*===== 2. Font Redefinition =====*/
html { font-size: 62.5%;}

body {
	font-size: 1.6em;
	font-family: Poppins,"Noto Sans JP","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
}

@media (max-width: 768px) {
	html { font-size: calc(100vw / 76.8 * 2.048);}
}
@media (max-width: 640px) { html { font-size: calc(100vw / 64 * 1.7067);}}
@media (max-width: 480px) { html { font-size: calc(100vw / 48 * 1.28);}}
@media (max-width: 375px) { html { font-size: calc(100vw / 37.5 * 1);}}
@media (max-width: 360px) { html { font-size: calc(100vw / 36);}}
@media (max-width: 320px) { html { font-size: calc(100vw / 32);}}

/*@media (min-width: 1536px){ html { font-size: calc(100vw / 153.6);}}*/


@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?elux7q');
  src:  url('fonts/icomoon.eot?elux7q#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?elux7q') format('truetype'),
    url('fonts/icomoon.woff?elux7q') format('woff'),
    url('fonts/icomoon.svg?elux7q#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

@font-face {
  font-family: 'icomoon';
  src:  url('fonts2/icomoon.eot?elux7q');
  src:  url('fonts2/icomoon.eot?elux7q#iefix') format('embedded-opentype'),
    url('fonts2/icomoon.ttf?elux7q') format('truetype'),
    url('fonts2/icomoon.woff?elux7q') format('woff'),
    url('fonts2/icomoon.svg?elux7q#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}


[class^="ico_"], [class*=" ico_"] {
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ico_blank:before {
  content: " \e900";
  color: currentColor;
  font-size: 1.2rem;
}
.ico_pdf:before {
  content: " \e903";
  color: currentColor;
  font-size: 1.8rem;
}


a:hover .ico_blank:before,
a:hover .ico_pdf:before { color: #191d69;}


@media (max-width: 768px) {
  a:hover .ico_blank:before,
  a:hover .ico_pdf:before { color: currentColor;}
}



/*===== 3. Base Box Setting =====*/
main {
  display: block;
  margin: 4.0rem 0 0;
}

main.lower_page {
  margin: 0;
}

section,
aside { padding: 0 1.0rem;}

article section:not(:last-child) { margin-bottom: 5.0rem;}


@media (max-width: 768px) {
  main { margin: 2rem 1rem 0;}
  
  section,
  aside { padding: 0;}
  
  article section:not(:last-child) { margin-bottom: 3rem;}
}

@media (min-width: 1536px){ 
  main { margin: 4rem 5rem 8rem;}
}



/*===== 4. Common Items Setting =====*/
/* Basic Link */
a {
  display: inline-block;
	color: hsl(237, 61.5%, 25.5%);
	outline: hidden;
  font-weight: 500;
	text-decoration: none;
}

a:hover { color: hsl(237, 22%, 71%);}

a.soon {
  opacity: .6;
  pointer-events: none;
}

a img { transition: .25s;}
a:hover img { opacity: .6;}

@media (max-width: 768px) {
  a img { transition: none;}
  a:hover img { opacity: 1; }
}


/* Header Items */
header {
	margin: 1rem 1rem  0;
	background:  #191d69;
  padding: 0 3rem;
}

header > div:first-child {
  display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 2.0rem 0 1.5rem;
  max-width: 1366px;
  margin: 0 auto;
}

header > div:first-child > :first-child {
  width: 25%;
}

header > div:first-child > :first-child img {
  width: 100%;
}

header #head_inquiry{
  display: flex;
  margin-left: 2rem;
}

header #head_inquiry p:not(:last-child) a {
	border-radius: 3.0rem;
  padding: 0.5rem 2rem;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
	box-shadow: 0 0.2rem 0.2rem rgb(0 0 0 / 50%), 0 0.1rem 0.1rem 0.1rem rgb(0 0 0 / 15%);
	background: linear-gradient(0deg, rgba(255,144,0,1) 50%, rgba(255,163,43,1) 50%);
	border: 0.3rem solid #ff9000;
	transition : 1s;
  margin: 0 2rem 0 0;
}

header #head_inquiry p:not(:last-child) a:hover { 
	color: #ffdc75;
	background: linear-gradient(0deg, rgba(255,144,0,1) 50%, rgba(255,144,0,1) 50%);
	box-shadow: none;
}

header #head_inquiry p:not(:last-child) a .ico_blank:before,
header #head_inquiry p:not(:last-child) a .ico_pdf:before{
	font-size: 1.6rem;
}

header #head_inquiry p:not(:last-child) a:hover .ico_blank:before,
header #head_inquiry p:not(:last-child) a:hover .ico_pdf:before{
	color: #ffdc75;
}

header #head_inquiry p:last-of-type a{
  position: relative;
  font-size: 1.6rem;
  color: #fff;
  border: solid #fff 0.1rem;
  padding: 0.5rem 2rem;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

header #head_inquiry p:last-of-type a:before {
  position: absolute;
  top: 50%;
  left: 0;
  border: 0.5rem solid transparent;
  border-left: 0.5rem solid #fff;
  transform: translateY(-50%);
  content: '';
}

header #head_inquiry p:last-of-type a:hover{
  color: #191d69;
  background: #fff;
}

header #head_inquiry .mypage_link li{
  margin-right: 1rem;
}


header #head_inquiry .mypage_link li:not(:last-child){
  margin-bottom: 0.5rem;
}

header #head_inquiry .mypage_link a{
  position: relative;
  display: inline-block;
  font-weight: bold;
  font-size: 1.2rem;
  color: #191d69;
  background: #fff;
  padding: 0.3rem 3rem .3rem 2.5rem;
  width: 100%;
  
}

header #head_inquiry .mypage_link a:hover{
  opacity: .6;
}
header #head_inquiry .mypage_link li:last-child a{
  background: #fff000;
}
  
header #head_inquiry .mypage_link a::before{
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0.2rem;
  width: 0.2rem;
  background: #191d69;
}

header #head_inquiry .mypage_link a::after{
  position: absolute;
  content: "";
  top: 50%;
  left: 1rem;
  transform: translateY(-50%);
  border-top: 0.5rem solid transparent;
  border-right: 0.5rem solid transparent;
  border-bottom: 0.5rem solid transparent;
  border-left: 0.5rem solid #191d69;
}

header #head_inquiry .mypage_link a > span{
  position: absolute;
  content: url("../img/common/ico-key.svg");
  top: 50%;
  right: 0.5rem;
  transform: translateY(-50%);
  width: 1.2rem;
  height: 1.2rem;
}

header #btn_gnavi { display: none;}

header > div:nth-child(2){
  margin: 0 auto;
  padding: 1.0rem;
  max-width: 1366px;
  background: #fff;
}

@media (max-width: 1024px) {
  header #head_inquiry{
    display: none;
  }
}


@media (max-width: 768px) {
  header {
		margin: 1rem 1rem 0;
    padding: 0;
	}

	header > div:first-child {
    padding: 2rem 5rem 1rem;
	}

	header > div:first-child > :first-child {
		max-width: none;
		width: 100%;
	}
	
	header > div:nth-child(2){
		margin: 0 1.5rem 0;
		background: #fff;
		padding: 0.5rem;
	}

}


/* Global Navigation */

#gnavi a.buttonlink { margin: 0;}

#gnavi > ul {
  display: flex;
	justify-content: space-around;
}

#gnavi > ul  > li{
	position: relative;
	text-align: center;
	display: flex;
	justify-content: space-around;
	flex: auto;
  font-size: 2rem;
}

#gnavi > ul  > li:not(:nth-last-child(2))::after{
	position: absolute;
	height: 100%;
	top: 0;
	right: 0;
	width: 0.1rem;
	background: #191d69;
	content: '';
}

#gnavi > ul > li > a {
	padding: 1.0rem;
	width: 100%;
}

#gnavi > ul > li.sp{display: none;}

/* button active */
[class^="active"] body {
  overflow: hidden; 
  height: 100vh;
}
[class^="active"] body::after {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 98;
  width: 100%;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.8);
  content: "";
}

@media (max-width: 1024px){
  #gnavi {
    display: none;
    position: fixed;
    top: 0;
    right: -50%;
    z-index: 99;
    overflow-y: scroll;
    width: 80%;
    height: 100vh;
    height: -webkit-fill-available;
    margin-bottom: 0;
    padding: calc(2.0rem + 10.0rem + 2.0rem) 2.0rem 2.0rem;
    background: rgba(0, 0, 0, 0);
  }
  
  #gnavi a.buttonlink { margin: 0 auto;}

  #gnavi > ul {
    display: block;
    margin: 0 0 2.0rem;
    background: none;
    -webkit-overflow-scrolling: touch;
  }
  
  #gnavi > ul li {
    margin-bottom: 0.5rem;
    padding-bottom: 0.5rem;
		text-align: left;
  }
  
  #gnavi > ul > li{font-size: 1.6rem;}
  #gnavi > ul li:not(:last-child) { border-bottom: 0.1rem dotted #666;}
  #gnavi > ul > li:not(:nth-last-child(3))::after { display: none;}
  #gnavi > ul > li > a {
    padding: 2.0rem;
    background: rgba(0,0,0,.25);
    color: #fff;
  }
  
  #gnavi > ul > li > a:hover,
  #gnavi > ul > li.dropdown > a { color: #fff;}
  #gnavi > ul > li > a.active { color: #3f5acf;}

  #gnavi > ul > li.dropdown > a::after {
    width: 4.5rem;
    height: 1.0rem;
    background: linear-gradient(to bottom right, transparent 50%, rgba(0,0,0,1) 50.01%) no-repeat top left / 50% 100%, linear-gradient(to bottom left, transparent 50%, rgba(0,0,0,1) 50.01%) no-repeat top right / 50% 100%;
  }

  #gnavi ul ul {
    position: static;
    width: 100%;
    min-width: auto;
    padding: 0;
    background: none;
    transform: none;
  }

  #gnavi ul ul li {
    display: block;
    margin: 0;
  }

  #gnavi ul ul li a {
    display: block;
    position: relative;
    padding: 3.2rem 3.2rem 3.2rem 1.0rem;
    font-size: 1.4rem;
    background: rgba(0,0,0,1);
  }
  
  #gnavi ul ul li a::after {
    position: absolute;
    top: 50%;
    right: 2.0rem;
    transform: translateY(-50%);
  }

  #gnavi ul ul li a:not([target]):not([href$=".pdf"])::after {
    width: 1.0rem;
    height: 1.0rem;
    margin: 0;
    transform: translateY(-50%) rotate(45deg);
  }
  #gnavi ul ul li a i {
    position: absolute;
    right: 2.0rem;
  }
	
  #gnavi#gnavi > a.buttonlink {
    display: block;
    margin: 0 auto 2.0rem;
  }
  
  #gnavi > a.buttonlink span { min-height: 5.5rem}
  #gnavi > a.buttonlink:hover span {
    margin: 0;
    box-shadow: 0 0.4rem 0 #821d3e;
  }
  
  #gnavi > ul .mypage_link p:not(:last-child){
    margin-bottom: 0.5rem;
  }

  #gnavi > ul .mypage_link{
    margin-top: 3rem;
  }
  #gnavi > ul .mypage_link a {
    position: relative;
    display: block;
    font-weight: bold;
    font-size: 1.4rem;
    color: #ccc;
    padding: 1rem 0rem 1rem 2rem;
    border: 0.1rem solid #ccc;
  }

  #gnavi > ul .mypage_link a::before {
    position: absolute;
    top: 50%;
    left: 0;
    border-top: 0.5rem solid transparent;
    border-bottom: 0.5rem solid transparent;
    border-left: 0.5rem solid currentColor;
    transform: translateY(-50%);
    content: "";
  }
  
   #gnavi > ul .mypage_link a > span{
    position: absolute;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%20.st0%7Bfill%3A%23191d69%3B%7D%3C%2Fstyle%3E%3Cg%3E%20%3Cpath%20class%3D%22st0%22%20d%3D%22M458.047%2C168.92h-63.358v-30.029c0-3.496-0.174-6.949-0.429-10.381h0.429C389.369%2C56.758%2C329.289%2C0%2C256.199%2C0%20c-0.067%2C0-0.133%2C0.006-0.2%2C0.006c-0.067%2C0-0.133-0.006-0.2-0.006c-73.089%2C0-133.169%2C56.758-138.49%2C128.51h0.428%20c-0.255%2C3.432-0.428%2C6.885-0.428%2C10.381v30.029H53.953c-22.718%2C0-40.801%2C19.029-39.644%2C41.719l14.394%2C263.689%20C29.78%2C495.438%2C47.21%2C512%2C68.347%2C512h375.306c21.137%2C0%2C38.566-16.562%2C39.644-37.672l14.395-263.689%20C498.849%2C187.949%2C480.765%2C168.92%2C458.047%2C168.92z%20M276.618%2C341.822v57.459c0%2C9.893-8.095%2C17.988-17.988%2C17.988h0%20c-9.894%2C0-17.988-8.096-17.988-17.988v-57.459c-11.579-6.385-19.517-18.561-19.517-32.719c0-20.713%2C16.792-37.506%2C37.505-37.506%20s37.505%2C16.793%2C37.505%2C37.506C296.135%2C323.262%2C288.198%2C335.438%2C276.618%2C341.822z%20M339.331%2C168.92H172.669v-30.029%20c0-45.988%2C37.367-83.418%2C83.33-83.526c45.964%2C0.108%2C83.331%2C37.537%2C83.331%2C83.526V168.92z%22%20style%3D%22fill%3A%20rgb(204%2C%20204%2C%20204)%3B%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E');
    top: 50%;
    right: 1rem;
    transform: translateY(-50%);
    width: 1.5rem;
    height: 1.5rem;
  }
  
  #gnavi > div:last-child { 
    display: block;
    margin-top: 1.0rem;
    text-align: center;
  }
	
  #gnavi > ul > li.sp:first-child{
    display:flex;
  }
  
	#gnavi > ul > li.sp:not(:first-child){
		display:block;
    border-bottom: none!important;
    margin-bottom: 0;
	}
	
	#gnavi > ul > li.sp:not(:first-child) a{
		background: none;
	}


  #gnavi a.buttonlink span{
    padding: 1rem;
  }
  
  /* button */
  header #btn_gnavi {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 1.0rem;
    right: 1.0rem;
    z-index: 100;
    max-width: 10.0rem;
    min-height: 10.0rem;
    margin: 0;
    padding: 1.0rem 2.6rem;
    background: #191d69;
  }
  header #btn_gnavi::before {
    position: absolute;
    top: 0.4rem;
    left: 0.4rem;
    width: calc(100% - 1.2rem);
    height: calc(100% - 1.2rem);
    border: 0.1rem solid rgba(255,255,255,.5);
    content: "";
  }
  
  header #btn_gnavi b {
    margin: -1.0rem 0 2.2rem;
    text-shadow: 0 0.4rem 0.2rem rgba(0, 0, 0, .15); 
    color: #fff;
    font-size: 1.6rem;
  }
  
  header #btn_gnavi span {
    display: block;
    position: relative;
    width: 100%;
    height: 0.2rem;
  }
  header #btn_gnavi span::before,
  header #btn_gnavi span::after {
    position: absolute;
    left: 0;
    width: 100%;
    height:  0.4rem;
    box-shadow: 0 0.4rem 0.2rem rgba(0, 0, 0, .15); 
    background: #fff;
    content: "";
  }
  header #btn_gnavi span::before  { top: 0.6rem;}
  header #btn_gnavi span::after  { top: -0.6rem;}
  
  .active_nav header #btn_gnavi { background: #191d69;}
  
  .active_nav header #btn_gnavi span { animation: navBAR .25s ease-in-out forwards;}
  .active_nav #btn_gnavi span::before { animation: navBAR01 .25s ease-in-out forwards;}
  .active_nav #btn_gnavi span::after { animation: navBAR02 .25s ease-in-out forwards}
  
  
  .active_nav #gnavi {
    display: block;
    animation: navSP .4s ease-in-out forwards;
  }
}

@media (max-width: 768px) {
	#gnavi {
    padding: calc(1.0rem + 4rem + 1.0rem) 1.0rem 1.0rem;
		height: 100vh;
  }

  #gnavi > ul {margin: 0 0 1.0rem; }
  
  #gnavi > ul li {
    margin-bottom: 0.2rem;
    padding-bottom: 0.2rem;
  }
	
  #gnavi > ul li { border-bottom: 0.1rem dotted #666;}
  #gnavi > ul > li > a { padding: 1.5rem 1.0rem; }
  
  #gnavi > ul > li.sp:not(:first-child) > a{padding: 2rem 1.0rem 0;}
  #gnavi > ul > li.dropdown > a::after {
    width: 2.0rem;
    height: 0.5rem;
    background: linear-gradient(to bottom right, transparent 50%, rgba(0,0,0,1) 50.01%) no-repeat top left / 50% 100%, linear-gradient(to bottom left, transparent 50%, rgba(0,0,0,1) 50.01%) no-repeat top right / 50% 100%;
  }

  #gnavi ul ul li a {
    padding: 1.5rem 1.5rem 1.5rem 1.0rem;
    font-size: 1.4rem;
  }
  
  #gnavi ul ul li a::after {
    right: 1.0rem;
  }

  #gnavi ul ul li a:not([target]):not([href$=".pdf"])::after {
    width: 0.5rem;
    height: 0.5rem;
  }
	
  #gnavi ul ul li a i {right: 1.0rem;}
	
  #gnavi#gnavi > a.buttonlink {
    margin: 0 auto 1rem;
  }
  
  #gnavi > a.buttonlink:hover span { box-shadow: 0 0.4rem 0 #821d3e;}
  #gnavi > div:last-child { margin-top: 2rem;}

  #gnavi > a.buttonlink { margin-bottom: 1rem;}
  
  #gnavi > a.buttonlink span { min-height: 6rem;}

  
  /* button */
  header #btn_gnavi {
    top: 0.5rem;
    right: 0.5rem;
    max-width: 5rem;
    min-height: 5rem;
    padding: 0.5rem 1.5rem;;
  }
  header #btn_gnavi::before {
    top: 0.2rem;
    left: 0.2rem;
    width: calc(100% - 0.6rem);
    height: calc(100% - 0.6rem);
    border: 0.1rem solid rgba(255,255,255,.5);
  }
  
  header #btn_gnavi b {
    margin: -0.5rem 0 1rem;
    text-shadow: 0 0.2rem 0.1rem rgba(0, 0, 0, .15); 
    font-size: 0.75rem;
  }
  
  header #btn_gnavi span {
    height: 0.2rem;
  }
  header #btn_gnavi span::before,
  header #btn_gnavi span::after {
    height: 0.2rem;
    box-shadow: 0 0.2rem 0.1rem rgba(0, 0, 0, .15); 
  }
  header #btn_gnavi span::before  { top: .25rem;}
  header #btn_gnavi span::after  { top: -.25rem;}
}


@keyframes navSP {
	0% {
    right: -50%;
    opacity: 0;
    background: rgba(0, 0, 0, 0);
	}
	100% {
    right: 0;
    opacity: 1;
    background: rgba(0, 0, 0, .8);
	}
}

@keyframes navBAR {
	0% {
    background: rgba(255,255,255,0);
	}
	100% {
    background: rgba(255,255,255,0);
  }
}
@keyframes navBAR01 {
	0% {
    top: 0.6rem;
	}
	60% {
    top: 0;
    transform: rotate(0);
  }
	80% {
    top: 0;
    transform: rotate(0);
  }
	100% {
    top: 0;
    transform: rotate(45deg);
  }
}
@keyframes navBAR02 {
	0% {
    top: -0.6rem;
	}
	60% {
    top: 0;
    transform: rotate(0);
  }
	80% {
    top: 0;
    transform: rotate(0);
  }
	100% {
    top: 0;
    transform: rotate(-45deg);
  }
}

/* Main_contents Items */
#main_contents{
	padding: 10.0rem 3.0rem 0;
	margin: -10.0rem 10px 0;
	background:  #191d69;
}

.lower_page #main_contents {
  padding: 0 3rem;
  margin: 0 1rem;
  background: #191d69;
}

#contents_inner{
	background:  #fff;
	padding: 0 0 8rem;
  max-width: 1366px;
  margin: 0 auto;
}

@media (max-width: 768px) {
	#main_contents{
		padding: 2.5rem 1.5rem 0;
		margin: -2.5rem 1rem 0;
		background:  #191d69;
	}
  
  .lower_page #main_contents{
		padding: 0rem 1.5rem 0;
		margin: 0rem 1rem 0;
		background:  #191d69;
	}
  

	#contents_inner{
		background:  #fff;
		padding-bottom: 3rem;
	}
}


/* Footer Items */
footer {
  padding-bottom: calc(13.5rem - 1.4rem);
  background: #191d69;
  color: #fff;
	padding: 2.0rem 3.0rem;
	margin: 0 10px 10px;
}

footer #footer_inquiry {
  display: flex;
  justify-content: space-between;
	padding: 0;
  max-width: 1366px;
  margin: 0 auto;
}

footer #footer_inquiry > div:nth-child(1) { flex: 1;}

footer #footer_inquiry > div:nth-child(1) a { color: #fff;}
footer #footer_inquiry > div:nth-child(1) a:hover { opacity: .6;}

footer #footer_inquiry dl {
  margin-bottom: 0.5rem;
}

footer #footer_inquiry dt {
  margin-bottom: 1.0rem;
  font-size: 2.2rem;
	font-weight: bold
}

footer #footer_inquiry dd { font-size: 1.6rem;}

footer #footer_inquiry dl + ul { display: flex;}

footer #footer_inquiry dl + ul li {
  display: flex;
  align-items: center;
  margin-right: 2.0rem;
  font-size: 2.2rem;
  white-space: nowrap;
}

footer #footer_inquiry dl + ul li span { margin-left: 1.0rem;}

footer #footer_inquiry dl + ul li:nth-child(1) a{pointer-events: none;}

footer #footer_inquiry > div:nth-child(2) {
	text-align: right;
}

footer #footer_inquiry > div:nth-child(2) > p {
  margin-bottom: 1.5rem;
	width: 18.0rem;
	margin: 0 0 1.0rem auto;
}

footer #footer_inquiry > div:nth-child(2) ul{text-align: right;}
footer #footer_inquiry > div:nth-child(2) ul li {display: inline-block; margin-left: 2.0rem;}

footer #footer_inquiry > div:nth-child(2) ul a { color: #ccc;}

footer #footer_inquiry > div:nth-child(2) ul a:hover {
  color: #fff;
}

footer #footer_inquiry > div:nth-child(2) ul a:hover i.ico_blank::before { color: currentColor;}

footer + p{
	text-align: center;
	color: #ccc;
	padding: 1.0rem;
	background: #333;
}

@media (max-width: 1024px){
	footer #footer_inquiry {
		display: block;
		padding: 0;
	}
	
	footer #footer_inquiry > div:nth-child(2) > p {
		width: 50%;
		margin: 1.0rem 0 0 0;
	}

	footer #footer_inquiry > div:nth-child(2) ul{text-align: left;}
	
	footer #footer_inquiry > div:nth-child(2) ul li {
    display: inline-block;
    margin: 0 1.0rem 0 0;
	}
}
	
@media (max-width: 768px) {
  footer {
		padding-bottom: calc(13.5rem - 1.4rem);
		padding: 2rem 3rem;
		margin: 0 1rem 1rem;
	}

	footer #footer_inquiry {
		display: block;
		padding: 0;
	}

	footer #footer_inquiry dl {
		margin-bottom: 0;
	}

	footer #footer_inquiry dt {
		margin-bottom: 1rem;
		font-size: 2rem;
	}

	footer #footer_inquiry dd { font-size: 1.4rem;}

	footer #footer_inquiry dl + ul { 
		display: block;
    margin: 1rem 0 0;
	}

	footer #footer_inquiry dl + ul li {
		font-size: 2rem;
    margin: 0.5rem 0 0;
	}

	footer #footer_inquiry > div:nth-child(2) > p {
		margin-bottom: 6rem;
		width: 40%;
		margin: 2rem auto 0;
	}
	
	footer #footer_inquiry dl + ul li span { margin-left: 1rem;}
	footer #footer_inquiry dl + ul li:nth-child(1) a{pointer-events: auto;}

	footer #footer_inquiry > div:nth-child(2) ul li {display: block; margin:0.5rem 0;}

	footer + p{
		padding: 0.5rem;
		font-size: 1.2rem;
	}
}

/* Pagetop Items */
.pagetop{
	position: fixed;
	z-index: 3;
	transform: translate(0, 17.0rem) rotate(-90deg);
	transform-origin:right bottom;
	right: 1.0rem;
	bottom: 17.0rem;
	transition: all 1s;
}

.pagetop.isActive{
  transition: all 1s;
	transform: translateY(0) rotate(-90deg);
}

.pagetop a{
	position: relative;
	color: #fff;
	background-color: #acacb7;
	padding: 0 7.0rem 0 1.0rem;
}

.pagetop a::before {
	content: "";
	position: absolute;
	top: 60%;
	left: 9.5rem;
	width: 4.0rem;
	height: 0.1rem;
	background: #fff;
	transition: all .2s linear;
}

.pagetop a::after {
	content: "";
	position: absolute;
	top: 23%;
	left: 13.0rem;
	width: 0.1rem;
	height: 0.9rem;
	background: #fff;
	transform: skewX(-315deg);
	transition: all .2s linear;
}

.pagetop a:hover{
	opacity: .8;
}

.pagetop a:hover::before {
	left: 10.0rem;
}

.pagetop a:hover::after {
	left: 13.5rem;
}

@media (max-width: 768px) {
	.pagetop{
		right: 0;
		bottom: 40rem;
		padding: 0 7rem 0 1rem;
	}

	.pagetop a::before {
		top: 60%;
		width: 4rem;
		height: 0.1rem;
	}

	.pagetop a::after {
		width: 0.1rem;
		height: 0.9rem;
	}
	
	.pagetop a:hover{
		opacity: 1;
	}

	.pagetop a:hover::before {
		left: 9rem;
	}

	.pagetop a:hover::after {
		left: 12.5rem;
	}
	


}